Autocomplete for CodeIgniter 2.x en NetBeans
Para los que trabajamos con NetBeans y Codeigniter esta función es la solución al problema de Autocomple del código.
Al ejecutarla, nos descargamos un archivo autocomplete.php que debemos incluir dentro de nuestro proyecto.
Despues de hacer esto, hacemos un restart de NetBeans (cerrarlo y volverlo a abrir) y ya tenemos el autocompleter funcionando para todas nuestras librerias, modelos y CodeIgniter Base Classes
function generate_nb_autocompletion($with_declared_classes = FALSE) {
$CI = & get_instance();
$CI->load->helper("file");
$CI->load->helper("download");
$classes = array();
if ((bool) $with_declared_classes === TRUE) {
$declared = get_declared_classes();
foreach ($declared as $class) {
if (strpos($class, "CI_") === 0) {
$classes[str_replace("CI_", FALSE, $class)] = $class;
}
}
}
$libs = get_filenames(APPPATH . "libraries/", FALSE, TRUE);
foreach ($libs as $file) {
$file = str_replace(".php", FALSE, $file);
$classes[str_replace("MY_", FALSE, $file)] = $file;
}
$core_libs = get_filenames(APPPATH . "core/", FALSE, TRUE);
foreach ($core_libs as $file) {
$file = str_replace(".php", FALSE, $file);
$classes[str_replace("MY_", FALSE, $file)] = $file;
}
$files = get_filenames(APPPATH . "models/", FALSE, TRUE);
foreach ($files as $file) {
$file = str_replace(".php", FALSE, $file);
$classes[str_replace("MY_", FALSE, $file)] = $file;
}
$class_property = " /**\n";
$class_property.= " *\n";
foreach ($classes as $key => $value) {
$class_property.= " * @property {$key} \${$value}\n";
}
$class_property.= " */\n";
$declaration = $class_property . "Class CI_Model{}\n";
$declaration .= $class_property . "Class CI_Controller{}\n";
foreach ($libs as $file) {
$lib = str_replace(".php", FALSE, str_replace("MY_", FALSE, $file));
$declaration .= $class_property . "Class {$lib}{}\n";
}
foreach ($core_libs as $file) {
$lib = str_replace(".php", FALSE, str_replace("MY_", FALSE, $file));
$declaration .= $class_property . "Class {$lib}{}\n";
}
force_download("autocomplete.php", "<?php \n{$declaration}\n?>");
}
Saludos,
No tenemos artículos relacionados.
October 9th, 2011 - 02:48
Hola como tengo q ejecutar este codigo para que me genere el archivo autocomplete que indicas.
Por favor explicame porque me serviria mucho esto.