详谈配置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 字符串操作入门教程
Dec 06 PHP
通过PHP CLI实现简单的数据库实时监控调度
Jul 01 PHP
非常精妙的PHP递归调用与静态变量使用
Dec 16 PHP
浅析PHP页面局部刷新功能的实现小结
Jun 21 PHP
php实现执行某一操作时弹出确认、取消对话框
Dec 30 PHP
php比较两个绝对时间的大小
Jan 31 PHP
php导入大量数据到mysql性能优化技巧
Dec 29 PHP
php获取一定范围内取N个不重复的随机数
May 28 PHP
PHP微信刮刮卡 附微信接口
Jul 22 PHP
通过chrome浏览器控制台(Console)进行PHP Debug的方法
Oct 19 PHP
Ajax+PHP实现的模拟进度条功能示例
Feb 11 PHP
Centos7安装swoole扩展操作示例
Mar 26 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中动态HTML的输出技术
2006/10/09 PHP
基于ThinkPHP5.0实现图片上传插件
2017/09/25 PHP
Laravel基础_关于view共享数据的示例讲解
2019/10/14 PHP
从sohu弄下来的flash中展示图片的代码
2007/04/27 Javascript
清华大学出版的事半功倍系列 javascript全部源代码
2007/05/04 Javascript
jquery 插件开发方法小结
2009/10/23 Javascript
dreamweaver 安装Jquery智能提示
2011/04/02 Javascript
JavaScript中__proto__与prototype的关系深入理解
2012/12/04 Javascript
ajax上传时参数提交不更新等相关问题
2012/12/11 Javascript
JavaScript动态修改弹出窗口大小的方法
2015/04/06 Javascript
js判断手机访问或者PC的几个例子(常用于手机跳转)
2015/12/15 Javascript
javascript基础语法学习笔记
2016/01/04 Javascript
jquery跟随屏幕滚动效果的实现代码
2016/04/13 Javascript
学JavaScript七大注意事项【必看】
2016/05/04 Javascript
jQuery事件委托之Safari
2016/07/05 Javascript
基于JavaScript实现鼠标向下滑动加载div的代码
2016/08/31 Javascript
JavaScript每天必学之基础知识
2016/09/17 Javascript
js实现密码强度检验
2017/01/15 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
ES6 Symbol数据类型的应用实例分析
2019/06/26 Javascript
vue移动端使用appClound拉起支付宝支付的实现方法
2019/11/21 Javascript
Vue列表如何实现滚动到指定位置样式改变效果
2020/05/09 Javascript
在Python中使用Mako模版库的简单教程
2015/04/08 Python
Python获取文件所在目录和文件名的方法
2017/01/12 Python
python3学习笔记之多进程分布式小例子
2018/02/13 Python
Python常用爬虫代码总结方便查询
2019/02/25 Python
python flask框架实现重定向功能示例
2019/07/02 Python
python 装饰器功能与用法案例详解
2020/03/06 Python
Bibloo荷兰:女士、男士和儿童的服装、鞋子和配饰
2019/02/25 全球购物
Stokke美国官方网店:高级儿童家具、推车、汽车座椅和配件
2020/06/06 全球购物
编写一子程序,将一链表倒序,即使链表表尾变表头,表头变表尾
2016/02/10 面试题
新闻记者实习自我鉴定
2013/09/19 职场文书
优秀护士获奖感言
2014/02/20 职场文书
餐饮总经理岗位职责
2014/03/07 职场文书
小石潭记导游词
2015/02/03 职场文书
vue实现登陆页面开发实践
2022/05/30 Vue.js