CodeIgniter在Zend Studio 9.0.2中自动完成

时间:2012-10-19 10:50:14

标签: php codeigniter zend-studio

一直试图让Zend Studio自动完成CodeIgniter。 偶然发现this stackoverflow answer但没有运气。我已经在PHP包含路径中添加了系统/库,但是当我打开控制器并尝试自动完成工作时($ this-> db)没有任何内容。

我搜索谷歌安静了一下,我能找到的唯一答案是我附上的那个。

如果有人以前尝试过,也许他可以告诉我我错在哪里,提前谢谢。

1 个答案:

答案 0 :(得分:0)

使intellisense工作的一种方法是创建一个虚拟CI控制器,如 -

<?php
class CI_Controller {
/**
 *
 * @var CI_DB_active_record
 */
public $db;

/**
 *
 * @var CI_Loader
 */
public $load;

/**
 *
 * @var CI_Output
 */
public $output;

/**
 *
 * @var CI_Email
 */
public $email;

/**
 *
 * @var CI_Session
 */
public $session;

/**
 *
 * @var CI_Config
 */
public $config;

/**
 *
 * @var CI_Benchmark
 */
public $benchmark;

/**
 *
 * @var CI_Calendar
 */
public $calendar;

/**
 *
 * @var CI_Cart
 */
public $cart;

/**
 *
 * @var CI_Encrypt
 */
public $encrypt;

/**
 *
 * @var CI_Upload
 */
public $upload;

/**
 *
 * @var CI_Form_validation
 */
public $form_validation;

/**
 *
 * @var CI_FTP
 */
public $ftp;

/**
 *
 * @var CI_Table
 */
public $table;

/**
 *
 * @var CI_Image_lib
 */
public $image_lib;

/**
 *
 * @var CI_Input
 */
public $input;

/**
 *
 * @var CI_Language
 */
public $lang;

/**
 *
 * @var CI_Pagination
 */
public $pagination;

/**
 *
 * @var CI_Trackback
 */
public $trackback;

/**
 *
 * @var CI_Parser
 */
public $parser;

/**
 *
 * @var CI_Typography
 */
public $typography;

/**
 *
 * @var CI_Unit_test
 */
public $unit;

/**
 *
 * @var CI_URI
 */
public $uri;

/**
 *
 * @var CI_User_agent
 */
public $agent;

/**
 *
 * @var CI_Xmlrpcs
 */
public $xmlrpcs;

/**
 *
 * @var CI_Xmlrpc
 */
public $xmlrpc;

/**
 *
 * @var CI_Zip
 */
public $zip;

    }

创建另一个类来获取它的实例 -

<?php
/**
* 
* Enter description here ...
* @return CI_Controller
*/
function get_instance()
{

}

将它们命名为Dummy_CIController.php和Dummy_Factory.php,并将它们放在/ applications / libraries文件夹中。

由于您还需要intellisense用于模型,因此创建Dummy_CIModel.php,其中包含Dummy_CIController.php所具有的所有内容,但它扩展了CI_Model。

您可能稍后想要通过从Controller中删除db intellisense来进行一些清理,因为您不希望直接从控制器调用数据库。