Установка Zend APPLICATION_ENV для сценариев командной строки

Стандартная практика настройки среды (production/staging/development) с Zend Framework использует SetEnv в конфигурации Apache (или .htaccess) для установки APPLICATION_ENV. Это, очевидно, хорошо работает для веб-запросов, но как насчет запуска сценариев командной строки (которые все еще являются частью приложения, используя ту же самую загрузку и полагаются на правильный APPLICATION_ENV)?

Любые лучшие практики для этого? Прямо сейчас я просто отбрасываю файл .environment.php в моем каталоге cli - он включается, если он существует (похоже на .htaccess, я думаю), и его можно использовать для установки среды.

Ответы

Ответ 1

От терминала

Для использования только командной строки (linux) вы можете добавить следующую строку в ~/.bashrc

export APPLICATION_ENV=development

Или добавьте строку в /etc/profile, чтобы установить переменную среды для всех пользователей.

Для получения дополнительной информации:

Из crontab

Cron использует чистую/пустую среду и не смотрит на /etc/profile или ~/.bashrc для APPLICATION_ENV или других переменных среды.

Просто определите переменную окружения внутри crontab:

APPLICATION_ENV=development
0 0 * * *   /usr/bin/php /path/to/your_script.php

Для получения дополнительной информации:

Ответ 2

Вы также можете запустить script

APPLICATION_ENV="local" php cli.php