Home  >  Article  >  php教程  >  php 自动加载方法

php 自动加载方法

WBOY
WBOYOriginal
2016-06-06 19:38:281346browse

php 无 ?phpclass inload {/** * 类自动载入,不需要由开发者调用 * * @param string $class 类文件 */private function autoload( $class ){if( empty($class) ){throw new QException('加载文件不存在'.$class);}else {require _SPRING_.'/_Core/SpringMap.

php 
<?php
class inload 
{
/**
     * 类自动载入,不需要由开发者调用
     *
     * @param string $class 类文件
     */
	private function autoload( $class )
	{
		if( empty($class) )
		{
			throw new QException('加载文件不存在'.$class);
		}
		else 
		{	
			require _SPRING_.'/_Core/SpringMap.php';  //框架地图
			if(! file_exists( $source[$class]['file'] ) )
			{
				throw new QException('加载文件不存在'.$class);
			} 
			require $source[$class]['file'];
		}
	}
	
	/**
     * 注册或取消注册一个自动类载入方法
     *
     * 该方法参考 Zend Framework
     *
     * @param string $class 提供自动载入服务的类
     * @param boolean $enabled 启用或禁用该服务
     */
	private function registerAutoload($class = 'Interpreter' , $enabled = true)
    {
        if (!function_exists('spl_autoload_register'))
        {
            throw new QException('spl_autoload 不存在这个PHP的安装');
        }
        if ($enabled === true)
        {
            spl_autoload_register(array($class, 'autoload'));
        }
        else
        {
            spl_autoload_unregister(array($class, 'autoload'));
        }
    }
	
	/**
    * 析构函数
    */
	public function __destruct()
	{
		self::registerAutoload('Interpreter' , false);
	}	
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:php $_SERVER信息分析整理Next article:学习Laravel