Blog Reacción Estudio

¡Tu zona de aprendizaje!

Ejecutar controlador de CodeIgniter a través de consola o terminal

Si en nuestro proyecto web utilizamos el framework CodeIgniter, es muy posible que necesitemos ejecutar algún proceso ya sea para una tarea de backend o por otra causa.

Lo más sencillo sería desarrollar estos procesos dentro del mismo framework, ya que ahí tenemos todas las librerias, helpers, parámetros y demás herramientas que hemos estado utilizando durante todo el desarrollo del proyecto.

El caso es que si habéis creado un proceso en CodeIgniter, creando un nuevo controlador, os habréis dado cuenta que el siguiente comando no sirve para ejecutar el controlador en una consola Linux:

php	ruta_codeigniter/index.php	nombre_del_controlador

Primero, para poder ejecutar el controlador desde una consola/terminal Linux, necesitamos saber dónde tenemos instalado PHP en nuestro sistema, para esto ejecutamos lo siguiente:

which php

Esto nos devolverá la ruta donde tenemos instalado PHP. En nuestro caso nos devuelve:

/usr/bin/php

Ahora, sabiendo donde se encuentra PHP, podemos ejecutar el controlador de la siguiente forma:

/usr/bin/php ruta_codeigniter/index.php	nombre_del_controlador

Como habréis observado, nuestro controlador se ha ejecutado correctamente.

Si queremos ejecutar un controlador de CodeIgniter como Crontab (tarea programada) en Linux, deberemos utilizar el mismo comando para ejecutarlo, sino, no funcionará.