我正在跟随凯文·麦克阿瑟(Kevin McArthur)出版的一本名为Pro PHP的书。版权是2008年所以它是一本相当古老的书。到目前为止,一切都按预期工作,除非我进入Learning ZendFramework部分。这是说Zend/Loader.php
文件不存在,这在我的情况下是正确的。我正在使用版本2.2.5,而本书使用的是1.0.3。我检查了Zend目录,除了loader.php
之外,还有一个包含多个文件的Loader目录。有没有办法可以让我的版本轻松地与书中的内容一起使用,还是比它的价值更麻烦?在书中,我被困在以下部分:
<?php
ini_set('display_errors', TRUE);
define('ZFW_VERSION', '2.2.5');
define('ZFW_PREFIX', '/usr/share/php5/ZendFramework');
define('APP_PATH', realpath(dirname(__FILE__). '/../'));
$paths = array(
APP_PATH,
APP_PATH . DIRECTORY_SEPARATOR . 'application' . DIRECTORY_SEPARATOR . 'models',
ZFW_PREFIX. DIRECTORY_SEPARATOR . 'ZendFramework-' . ZFW_VERSION . DIRECTORY_SEPARATOR . 'library',
get_include_path()
);
set_include_path(implode(PATH_SEPARATOR, $paths));
require_once 'Zend/Loader.php';
Zend_Loader::registerAutoload();
$front = Zend_Controller_Front::getInstance();
$front->throwExceptions(TRUE);
$front->run(APP_PATH . '/application/controllers');
我可以修改此代码吗?
答案 0 :(得分:1)
ZF1和ZF2不兼容,因此您无法将ZF2与为ZF1编写的教程一起使用。如果您想坚持使用本书,请下载最新版本的ZF1(目前为1.12.3)并使用它。您可能还需要稍微调整Zend Loader行:
require_once 'Zend/Loader/Autoloader.php';
Zend_Loader_Autoloader::getInstance();
由于在该书写完之后所做的一些改变。
或者你可以学习ZF2,这可能是未来的证据。