详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)


Posted in PHP onApril 07, 2017

1、设置字体、风格

详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)

详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)

详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)

代码主题选择Monokai会是彩色的代码。

2、配置CI代码提示

<1>下载代码提示项目:

https://github.com/topdown/phpStorm-CC-Helpers

<2>拷贝提示片段:

将CI_phpStorm.php,DB_active_rec.php(改名为DB_query_builder.php),my_models.php拷贝到网站根目录,即index.php同目录下。

<3>将CI核心类设为纯文本:

将system里面的core/Controller.php,core/Model.php,database/DB_query_builder.php右键设为plain text。

现在已经有代码完成功能了。

<4>实现model提示功能:

把Model类在my_models.php的注释里添加,注意把类名首字母大写改为小写。这样Model就能提示了。

<5>实现view提示:

<h2><?php
  /**
   * @see News::index()
   * @var News $title
   * @var News $news
   */
  echo $title;
?></h2>

相应的controller类需要实现__toString()方法,就可以了。

按住ctrl+鼠标左键,就可以看到他来自于哪个类(ctrl+q显示注释),如果点击函数名则可以导航到那个函数。

<6>model子文件夹

在model再创建文件夹,比如创建这样一个model类:mod/Test1_model.php。

同样是在my_models.php里添加注释,但是忽略mod文件夹,当这个文件夹不存在一样:

@property test1_model      $test1_model

但是在代码load的时候,这个文件夹要体现出来,这样体现出来也不会影响这个代码提示的:

$this->load->model('mod/test1_model');

$data['news2'] = $this->test1_model->getData();

<7>实现library自定义类提示功能

自定义代码会放在libraries里面,并且会放在一个单独的子文件夹里。因为这个代码可能会重用,这个子文件夹会单独做为一个git,而其他的代码则重用的可能性不大、紧扣本网站的独特业务逻辑,不考虑重用问题。那么这种自定义代码如何做代码提示?跟model是一样的:

@property Testzphp        

$testzphp
然后在controller里:

$this->load->library('zphp/Testzphp');

$data['zphp'] = $this->testzphp->test(235);

3、git配置

将.idea添加到忽略清单。

4、拼写检查去掉

project settings ---> inspections ---> spelling ---> Typo的勾去掉

5、快捷键

<1>快速导航

当通过代码导航到对应的类-方法查看源代码之后,需要能快速的返回回来:ctrl+alt+左箭头/右箭头

以上这篇详谈配置phpstorm完美支持Codeigniter(CI)代码自动完成(代码提示)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
PHP序列号生成函数和字符串替换函数代码
Jun 07 PHP
PHP 正则表达式之正则处理函数小结(preg_match,preg_match_all,preg_replace,preg_split)
Oct 05 PHP
php5.5新数组函数array_column使用
Jul 08 PHP
ThinkPHP 3.2 数据分页代码分享
Oct 14 PHP
php实现高效获取图片尺寸的方法
Dec 12 PHP
PHP判断浏览器、判断语言代码分享
Mar 05 PHP
今天你说520了吗?不仅有php表白书还有java表白神器
May 20 PHP
完美解决thinkphp唯一索引重复时出错的问题
Mar 31 PHP
Yii 2.0实现联表查询加搜索分页的方法示例
Aug 02 PHP
ThinkPHP中图片按比例切割的代码实例
Mar 08 PHP
解决php用mysql方式连接数据库出现Deprecated报错问题
Dec 25 PHP
php随机生成验证码,php随机生成数字,php随机生成数字加字母!
Apr 01 PHP
php 根据自增id创建唯一编号类
Apr 06 #PHP
php及codeigniter使用session-cookie的方法(详解)
Apr 06 #PHP
浅谈php(codeigniter)安全性注意事项
Apr 06 #PHP
详谈php ip2long 出现负数的原因及解决方法
Apr 05 #PHP
php生成0~1随机小数的方法(必看)
Apr 05 #PHP
php lcg_value与mt_rand生成0~1随机小数的效果对比分析
Apr 05 #PHP
php str_getcsv把字符串解析为数组的实现方法
Apr 05 #PHP
You might like
精通php的十大要点(上)
2009/02/04 PHP
php5 non-thread-safe和thread-safe这两个版本的区别分析
2010/03/13 PHP
PHP调用C#开发的dll类库方法
2014/07/28 PHP
php使用CURL伪造IP和来源实例详解
2015/01/15 PHP
PHP实现的json类实例
2015/07/28 PHP
php实现smarty模板无限极分类的方法
2015/12/07 PHP
php微信开发之谷歌测距
2018/06/14 PHP
javascript 解析后的xml对象的读取方法细解
2009/07/25 Javascript
ExtJS PropertyGrid中使用Combobox选择值问题
2010/06/13 Javascript
jQuery设置和获取HTML、文本和值示例
2014/07/08 Javascript
js和jquery分别验证单选框、复选框、下拉框
2015/12/17 Javascript
JS生成和下载二维码的代码
2016/12/07 Javascript
Vue.js实现表格动态增加删除的方法(附源码下载)
2017/01/20 Javascript
在axios中使用params传参的时候传入数组的方法
2018/09/25 Javascript
js实现树形数据转成扁平数据的方法示例
2020/02/27 Javascript
[13:55]Newbee vs Team Spirit
2018/06/07 DOTA
跟老齐学Python之list和str比较
2014/09/20 Python
详解Python的迭代器、生成器以及相关的itertools包
2015/04/02 Python
TensorFlow Session使用的两种方法小结
2018/07/30 Python
python使用mitmproxy抓取浏览器请求的方法
2019/07/02 Python
Django框架模板用法入门教程
2019/11/04 Python
pytorch:torch.mm()和torch.matmul()的使用
2019/12/27 Python
Python中常用的高阶函数实例详解
2020/02/21 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
Html5 实现微信分享及自定义内容的流程
2019/08/20 HTML / CSS
h5实现获取用户地理定位的实例代码
2017/07/17 HTML / CSS
荷兰电脑专场:Paradigit
2018/05/05 全球购物
报关简历自我评价怎么写
2013/09/19 职场文书
教你打造完美的创业计划书
2014/01/06 职场文书
会计专业职业规划:规划自我赢取未来
2014/02/12 职场文书
施工工地安全标语
2014/06/07 职场文书
毕业证丢失证明范本
2014/09/20 职场文书
小学教研工作总结2015
2015/05/13 职场文书
2016年3月份红领巾广播稿
2015/12/21 职场文书
先进基层党组织事迹材料2016
2016/02/29 职场文书
MySQL创建管理HASH分区
2022/04/13 MySQL