1. 程式人生 > >phpstrom2018.2支援codeigniter自動匹配,提示等

phpstrom2018.2支援codeigniter自動匹配,提示等

公司用的codeigniter 3.1.2版本的,我用的ide是phpstrom的,不支援自動跳轉,一般像laravel這種框架,ctrl+單擊就能跳轉到對應的方法模組,但ci不支援,需要自己手動新增些配置

1、https://github.com/topdown/phpStorm-CC-Helpers
去下載外掛在這裡插入圖片描述

我用的是codeigniter3資料夾下的三個檔案

2、將專案中的三個檔案CI_phpStorm.php,DB_active_rec.php,my_models.php複製到專案的根目錄下,就是index.php同目錄下
在這裡插入圖片描述

有些人說要把DB_active_rec.php改名為DB_query_builder.php,說是codeigniter已經沒有了DB_active_rec.php檔案,但有DB_query_builder.php,反正我是沒有改

3、將system裡面的core/Controller.php,core/Model.php,database/DB_query_builder.php右鍵設為plain text。

4、最後一點,也是最重要的,這個還是靠同事幫忙才搞定的
就是在controller中,利用load載入時,前面是模組的檔名,後面是別名

$this->load->model('api_organization_classes_model', 'oc');

在這裡插入圖片描述
下面引用時

$class_info = $this->oc->get_one_by_id($this->class_id);

在這裡插入圖片描述
看圖片中,$this->oc 這個oc上面是灰的,
這時進入到根目錄,找到剛才複製過來的my_models.php的檔案
在上面的按照例子新增一段程式碼

* @property api_organization_classes_model      $oc

在這裡插入圖片描述

特別注意一點,就是前面是類名,首字母小寫,後面是別名,跟上面的
$this->load->model裡面的一定要對應,一定要對應,一定要對應,我就是在這裡被坑的,回頭再看看controller層裡的程式碼

$class_info = $this->oc->get_one_by_id($this->class_id);

在這裡插入圖片描述
有木有,有木有,變黃了
再次ctrl+單擊,跳轉到對應的方法,完美