Запуск через CLI — командную строку
Как и при вызове контроллеров приложения через URL в браузере, они также могут быть загружены через командную строку (command-line interface, CLI).
Что такое CLI?
Интерфейс командной строки — это основанный на тексте метод взаимодействия с компьютерами. Подробную информацию смотрите в статье википедии.
Зачем запускать через командную строку?
Есть много причин для использования CodeIgniter через командную строку, но они не всегда очевидны.
- Запуск действий cron, когда вы хотите использовать wget или curl
- Сделать недоступными действия cron через URL, проверяя $this->input->is_cli_request()
- Выполнение интерактивных задач, вроде установки разрешений, очистки директорий кеша, запуска бэкапов и т.д.
- Интеграция с другими приложениями на других языках. Например, произвольный скрипт C++ может вызвать команду и запустить код в ваших моделях!
Давайте попробуем: Hello World!
Давайте создадим простой контроллер, который мы попробуем в действии. Используя текстовый редактор, создайте файл с названием tools.php, и поместите в него следующий код:
Потом сохраните этот файл в директорию application/controllers/.
Теперь посетите сайт, используя URL, соответствующий этому:
example.com/index.php/tools/message/to
Теперь откройте терминал, если вы используете Mac или Linux, или Run > "cmd" в Windows и перейдите к вашему проекту на CodeIgniter.
$ cd /path/to/project;
$ php index.php tools message
Если вы сделали это правильно, вы увидите Hello World!.
$ php index.php tools message "John Smith"
Здесь мы передаем аргументы, тем же путем, каким работают параметры URL. Если было передано "John Smith", то мы увидим Hello John Smith!.
Вот и все!
В общем, это все, что нужно знать о контроллерах в командной строке. Помните, что это обычные контроллеры, поэтому роутинг и _remap также работают великолепно.