Ejecutar CodeIgniter desde la línea de comandos

admin

February 7, 2013

Uncategorized

No Comment

Para ejecutar scripts de CodeIgniter desde la línea de comandos, sigue los siguientes pasos:

1. Copia index.php en un archivo llamado cli.php.

2. Modifica cli.php, agregando este código al principio del script

[php]

<?php

/* Esta linea detecta si el script está siendo llamado
* mediante el explorador e impide su utilización
* si este es el caso.
* Con esto, nos aseguramos que solamente corra mediante
* la línea de comandos
* */
if (isset($_SERVER[‘REMOTE_ADDR’])) die(‘Permiso denegado.’);

/* Definimos que se está corriendo desde la linea de comandos
* por si lo necesitamos saber en algún script, como una
* constante
* */
define(‘CMD’, 1);

/* Utilizaremos los argumentos de la línea de comandos como los
* segmentos que utilizamos como dirección cuando utilizamos el
* explorado, pero debemos “quitar” el primero, que es el nombre
* del script “cli.php”
* */
unset($argv[0]);

/* Formamos la url con los argumentos de la línea de comandos
* */
$_SERVER[‘QUERY_STRING’] =  $_SERVER[‘PATH_INFO’] = $_SERVER[‘REQUEST_URI’] = ‘/’ . implode(‘/’, $argv) . ‘/’;

[/php]

¡Listo! Ahora podemos llamar a los scripts desde la ruta de comandos, llamando a php y pasandole como parámetros el nombre del script ( cli.php ), luego el nombre del controlador, luego el nombre de la función y posteriormente los segmentos necesarios, si los hay. Esta es la sintaxis:

[bash]

php cli.php <controlador> <funcion> [<segmento1> … <segmentoN>]

[/bash]

Ejemplo: Supongamos que el script de code igniter que queremos correr es la funcion “enviar” del controlador “mensajes”. Desde el explorador lo llamaríamos así:

[html]

<site_url>/mensajes/enviar

[/html]

Desde la línea de comandos debemos llamar:

[bash]

php cli.php mensajes enviar

[/bash]

¿Fácil no? Con este método podemos programar la ejecución de scripts que utilicen CodeIgniter mediante Cron Jobs, sin mayor problema. Bastante util para seguir usando el mismo framework si tu aplicación web está programada con CodeIgniter.

Related Posts

Las Tres Personas para la Programación de Algoritmos

La programación de algoritmos hay tres sujetos con los que debes contar: El programador, claro está, el que implementa el código. El matemático, el que diseña el algoritmo, que sabe de números. Y el tester. El que diseña y realiza las pruebas. Sé que nosotros naturalmente nos vamos por el programador, y esto es lo […]

Read More

¿Como aprender a programar en un corto periodo de tiempo?

Comienza aprendiendo los fundamentos. Puede tomarte como seis semanas. Entonces podrás aprender cualquier lenguaje, en cualquier plataforma en cualquier paradigma, realmente rápido. La programación es sobre comunicación, estructura, orden. Es pensar, no teclear. Re-aprender a pensar, de manera ordenada, y teniendo en cuenta la forma en que funcionan los ordenadores. Eso es todo lo que […]

Read More

Leave a Reply

Your email address will not be published. Required fields are marked *