ผู้เขียนโปรแกรมโดยใช้เครื่องมือ Netbeans จะพบอุปสรรคในการเขียนกับ Codeigniter ตรงที่มันไม่มีตัวช่วยหรือ auto complete มาให้เลย วิธีนี้จะช่วยให้ Netbeans ของคุณรองรับ Codeigniter auto complete ได้
ให้ก๊อปปี้โค้ดต่อไปนี้
<?php
/**
* @property CI_DB_active_record $db
* @property CI_DB_forge $dbforge
* @property CI_Benchmark $benchmark
* @property CI_Calendar $calendar
* @property CI_Cart $cart
* @property CI_Config $config
* @property CI_Controller $controller
* @property CI_Email $email
* @property CI_Encrypt $encrypt
* @property CI_Exceptions $exceptions
* @property CI_Form_validation $form_validation
* @property CI_Ftp $ftp
* @property CI_Hooks $hooks
* @property CI_Image_lib $image_lib
* @property CI_Input $input
* @property CI_Language $language
* @property CI_Loader $load
* @property CI_Log $log
* @property CI_Model $model
* @property CI_Output $output
* @property CI_Pagination $pagination
* @property CI_Parser $parser
* @property CI_Profiler $profiler
* @property CI_Router $router
* @property CI_Session $session
* @property CI_Sha1 $sha1
* @property CI_Table $table
* @property CI_Trackback $trackback
* @property CI_Typography $typography
* @property CI_Unit_test $unit_test
* @property CI_Upload $upload
* @property CI_URI $uri
* @property CI_User_agent $user_agent
* @property CI_Validation $validation
* @property CI_Xmlrpc $xmlrpc
* @property CI_Xmlrpcs $xmlrpcs
* @property CI_Zip $zip
*
* Some of my lib example
* @property Auth $auth
* @property Row_locking $row_locking
* @property Crud $crud
*
*/
class MY_Controller extends CI_Controller {}
class CI_DB_Driver {
/**
* Execute the query
*
* Accepts an SQL string as input and returns a result object upon
* successful execution of a "read" type query. Returns boolean TRUE
* upon successful execution of a "write" type query. Returns boolean
* FALSE upon failure, and if the $db_debug variable is set to TRUE
* will raise an error.
*
* @access public
* @param string An SQL query string
* @param array An array of binding data
* @return CI_DB_mysql_result
*/
function query() {}
}
/**
* @property CI_DB_active_record $db
* @property CI_DB_forge $dbforge
* @property CI_Config $config
* @property CI_Email $email
* @property CI_Encrypt $encrypt
* @property CI_Form_validation $form_validation
* @property CI_Ftp $ftp
* @property CI_Image_lib $image_lib
* @property CI_Input $input
* @property CI_Language $language
* @property CI_Loader $load
* @property CI_Output $output
* @property CI_Pagination $pagination
* @property CI_Session $session
* @property CI_Sha1 $sha1
* @property CI_Table $table
* @property CI_Trackback $trackback
* @property CI_Typography $typography
* @property CI_Upload $upload
* @property CI_URI $uri
* @property CI_User_agent $user_agent
* @property CI_Validation $validation
* @property CI_Xmlrpc $xmlrpc
* @property CI_Xmlrpcs $xmlrpcs
* @property CI_Zip $zip
*/
class CI_Model {}
/**
* @return CI_Controller
*/
function &get_instance() {}
จากนั้นสร้างไฟล์ขึ้นมา ไว้ในที่ๆจำง่าย เช่น My Documents\NetBeansProject\CI_autocomplete\ci_autocomplete.php
แล้ววางโค้ดข้างบนที่ก๊อปปี้มาไว้ในไฟล์นี้แล้ว save
เปิดโปรแกรม Netbeans และเปิด project ขึ้นมาสักโปรเจ็คหนึ่ง
คลิกที่ชื่อโปรเจ็คในหน้าต่าง Projects แล้วคลิกที่เมนู File > Project Properties
คลิกที่แทบ PHP Include Path แล้วกดปุ่ม Add Folder...
เลือกไปที่ Folder ที่เก็บไฟล์ ตามตัวอย่างด้านบนคือ My Documents\NetBeansProjects\CI_autocomplete แล้วกด OK
ให้ปิด Netbeans และลองเปิดใหม่ Netbeans ก็จะมีตัว auto complete ของ Codeigniter ขึ้นมาแล้ว
วิธีทดลอง
เปิดไฟล์ controller สักไฟล์หนึ่ง แล้วพิมพ์ $this->input->
จะมีตัว auto complete ต่างๆขึ้นมามากมาย
ขอบคุณโค้ด auto complete จากเว็บ CI http://codeigniter.com/forums/viewthread/180079/#853071