我正在寻找一种好方法来获得在 Zend Studio for Eclipse 中工作的 codeigniter 中的库的自动完成和单击参考(无论叫什么)。

例如,如果我做$ this-> load-> library('dx_auth');$this->dx_auth->get_user_id();

zend studio 不知道它是什么..

有一种很奇怪的方法可以做到这一点(见下文, 来源),但我觉得应该有更好的方法来做到这一点..

有人有主意吗?

// All of these are added so I get real auto complete
// I don't have to worry about it causing any problems with deployment
// as this file never gets called as I'm in PHP5 mode

// Core CI libraries
$config = new CI_Config();
$db = new CI_DB_active_record();
$email = new CI_Email();
$form_validation = new CI_Form_validation();
$input = new CI_Input();
$load = new CI_Loader();
$router = new CI_Router();
$session = new CI_Session();
$table = new CI_Table();
$unit = new CI_Unit_test();
$uri = new CI_URI();
有帮助吗?

解决方案

将 CI 的库路径添加为项目的包含路径。

  1. 在里面 PHP 浏览器, ,打开您的项目并右键单击 包括路径
  2. 选择 配置 从上下文菜单
  3. 然后在包含路径对话框中选择 图书馆 标签
  4. 点击 添加外部文件夹...
  5. 浏览到 CI 的本地副本并选择它的库目录(无论它保存这些类文件的位置)
  6. 点击 完毕

瞧,你走了!

我应该注意,您还可以在创建项目时定义包含路径。

其他提示

由于彼得的回答指示,将包括路径肯定是最好的一段路要走。然而,这依赖于在CI源代码的文档块是完整的,准确的,而不是暧昧。例如,如果一个方法@return被声明为Some_Class|false,自动完成将不知道该怎么办。

要添加到彼得的回答,你也可以强制PDT / Eclipse中/ ZSfE对待任何变量,像这样一个特定的类的实例:

/* @var $varName Some_Class_Name */

如果您导入项目从说,像SVN,那么你可能没有此项目使PHP支持。您可以通过右键单击您的项目启用 - >配置 - >添加PHP支持......

测试中ZS 7.2.1

我使用的Zend Studio 9, 这就是我所做的: 加入CI的库路径,包括路径到您的项目。

$this->load->model('my_model');
$my_model = &$this->my_model;
$my_model instanceof my_model;//add this ,zend studio can autocomplete 
$my_model->myfunc($foo,$bar);
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top