您的位置:首页 > 编程语言 > PHP开发

解析下zf工作目录下的init_autoloader.php

2014-04-30 14:13 267 查看
if (file_exists('vendor/autoload.php')) {
$loader = include 'vendor/autoload.php';
}

$zf2Path = './library/';

if (is_dir('vendor/ZF2/library')) {
$zf2Path = 'vendor/ZF2/library';
} elseif (getenv('ZF2_PATH')) {      // Support for ZF2_PATH environment variable or git submodule
$zf2Path = getenv('ZF2_PATH');
} elseif (get_cfg_var('zf2_path')) { // Support for zf2_path directive value
$zf2Path = get_cfg_var('zf2_path');
}

if ($zf2Path && !class_exists('Zend\Loader\AutoloaderFactory')) {
if (isset($loader)) {
$loader->add('Zend', $zf2Path);
$loader->add('ZendXml', $zf2Path);
} else {
include $zf2Path . '/Zend/Loader/AutoloaderFactory.php';
Zend\Loader\AutoloaderFactory::factory(array(
'Zend\Loader\StandardAutoloader' => array(
'autoregister_zf' => true
)
));
}
}

if (!class_exists('Zend\Loader\AutoloaderFactory')) {
throw new RuntimeException('Unable to load ZF2. Run `php composer.phar install` or define a ZF2_PATH environment variable.');
}


上面是经过配置后的文件内容,其大概的机制就是自定义ZF核心加载包位置或者是使用官网上默认的几个加载位置,此处我配置为根目录下的library目录(上面代码中的红色字部分)。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: