php 类自动载入的方法
php类自动载入方法
<?php
classinload
{
/**
*类自动载入,不需要由开发者调用
*
*@paramstring$class类文件
*/
privatefunctionautoload($class)
{
if(empty($class))
{
thrownewQException('加载文件不存在'.$class);
}
else
{
require_SPRING_.'/_Core/SpringMap.php';//框架地图
if(!file_exists($source[$class]['file']))
{
thrownewQException('加载文件不存在'.$class);
}
require$source[$class]['file'];
}
}
/**
*注册或取消注册一个自动类载入方法
*
*该方法参考ZendFramework
*
*@paramstring$class提供自动载入服务的类
*@paramboolean$enabled启用或禁用该服务
*/
privatefunctionregisterAutoload($class='Interpreter',$enabled=true)
{
if(!function_exists('spl_autoload_register'))
{
thrownewQException('spl_autoload不存在这个PHP的安装');
}
if($enabled===true)
{
spl_autoload_register(array($class,'autoload'));
}
else
{
spl_autoload_unregister(array($class,'autoload'));
}
}
/**
*析构函数
*/
publicfunction__destruct()
{
self::registerAutoload('Interpreter',false);
}
以上所述就是本文的全部内容了,希望大家能够喜欢。