当您从 Web 浏览器运行它时,包含路径在 public/index.php 中设置,然后引导应用程序。同样,您可以复制 public/index.php(例如 setup.php)并将其包含在您的命令行代码中。此外,将您需要的引导位复制到该文件中。
请注意,在 ZF2 中有一个“控制台路由”,可让您创建 MVC 命令行脚本。
这是我的 setup.php,请注意我如何使用“new Zend_Config”加载配置。只需在要从命令行(控制台)运行的文件中“要求”此文件。
编辑:您必须在“/relative/path/to/application/”中正确设置 APPLICATION_PATH。
<?php
error_reporting(E_ALL & ~E_NOTICE | E_STRICT);
// Define path to application directory
defined('APPLICATION_PATH')
|| define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/relative/path/to/application/'));
// Define application environment
define('APPLICATION_ENV', 'development');
defined('APPLICATION_ENV')
|| define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
// Ensure library/ is on include_path
set_include_path(implode(PATH_SEPARATOR, array(
realpath(APPLICATION_PATH . '/../library'),
get_include_path(),
)));
require_once 'Zend/Application.php';
$app = new Zend_Application(APPLICATION_ENV, APPLICATION_PATH . '/configs/application.ini');
$res = $app->getOption('resources');
$config = new Zend_Config($res);