2.6 添加自动加载文件 init_autoloader.php

最后更新于:2022-04-01 00:40:13

路径:`/application/init_autoloader.php` ~~~ if (defined('LIB')) { include LIB . '/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. '); } ~~~ 代码解释: * if (defined('LIB')) 判断是否有定义预定义变量指向ZF2类库 * include LIB . '/Zend/Loader/AutoloaderFactory.php' 导入ZF2框架自动加载工厂文件 * Zend\Loader\AutoloaderFactory::factory(array()) 对自动加载工厂类进行设置 * if (!class_exists('Zend\Loader\AutoloaderFactory')) 判断工厂类是存在,如果不存在则抛出异常 下面是 `init_autoloader.php` 的另一个写法,此写法其实是 Zend studio 或 netbeans 创建项目时自动生成的写,这样的写法其实是加入对 phpunit 单元测试的支持。phpunit 的测试环境一般都是在命令行上操作完成,所以这样的写法也是对命令行环境的一种设置,在此就不多加详解;下面只贴出代码。 ~~~ if (file_exists('vendor/autoload.php')) { $loader = include 'vendor/autoload.php'; } if (defined('LIB')) { if (isset($loader)) { $loader->add('Zend', LIB); } else { include LIB. '/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.'); } ~~~
';