Zend Framework 框架解析【一】

先从入口文件开始分析php

index.phpweb


<?php

error_reporting(E_ALL);
ini_set("display_errors",1);
chdir(dirname(__DIR__));
// Decline static file requests back to the PHP built-in webserver
if (php_sapi_name() === 'cli-server' && is_file(__DIR__ . parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH))) {
    return false;
}
// Setup autoloading
//初始化自动加载类
require 'init_autoloader.php';

// Run the application!
//运行应用程序
Zend\Mvc\Application::init(require 'config/application.config.php')->run();

?>
api


init_autoloader.php文件的功能主要以下,app

一、会先检查是否有vendor/autoload.php文件,并设置ZF框架文件的主目录框架

二、若是没有verdor/autoload.php文件,使用自动加载工厂类,加载标准加载器ui


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


调用Zend\Loader\AutoloaderFactory::factory方法,主要功能以下spa

一、引用'Zend\Loader\StandardAutoloader' 并初始化code

二、注册namespace Zendserver

三、调用Zend\Loader\StandAutoloader类的autoload方法载入spl__autoload

相关文章
相关标签/搜索