การทำให้ Netbeans มี auto complete ของ Codeigniter

ผู้เขียนโปรแกรมโดยใช้เครื่องมือ 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 ขึ้นมาสักโปรเจ็คหนึ่ง

netbeans codeigniter auto complete

คลิกที่ชื่อโปรเจ็คในหน้าต่าง Projects แล้วคลิกที่เมนู File > Project Properties

คลิกที่แทบ PHP Include Path แล้วกดปุ่ม Add Folder...

เลือกไปที่ Folder ที่เก็บไฟล์ ตามตัวอย่างด้านบนคือ My Documents\NetBeansProjects\CI_autocomplete แล้วกด OK

ให้ปิด Netbeans และลองเปิดใหม่ Netbeans ก็จะมีตัว auto complete ของ Codeigniter ขึ้นมาแล้ว

netbeans auto complete

วิธีทดลอง
เปิดไฟล์ controller สักไฟล์หนึ่ง แล้วพิมพ์ $this->input-> จะมีตัว auto complete ต่างๆขึ้นมามากมาย

ขอบคุณโค้ด auto complete จากเว็บ CI http://codeigniter.com/forums/viewthread/180079/#853071

 

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>