简介:
functionimport($class,$baseUrl='',$ext='.class.php'){
static$_file=array();
$class=str_replace(array('.','#'),array('/','.'),$class);
if(''===$baseUrl&&false===strpos($class,'/')){
//检查别名导入
returnalias_import($class);
}
if(isset($_file[$class.$baseUrl]))
returntrue;
else
$_file[$class.$baseUrl]=true;
$class_strut=explode('/',$class);
if(empty($baseUrl)){
if('@'==$class_strut[0]||APP_NAME==$class_strut[0]){
//加载当前项目应用类库
$baseUrl=dirname(LIB_PATH);
$class=substr_replace($class,basename(LIB_PATH).'/',0,strlen($class_strut[0])+1);
}elseif('think'==strtolower($class_strut[0])){//think官方基类库
$baseUrl=CORE_PATH;
$class=substr($class,6);
}elseif(in_array(strtolower($class_strut[0]),array('org','com'))){
//org第三方公共类库com企业公共类库
$baseUrl=LIBRARY_PATH;
}else{//加载其他项目应用类库
$class=substr_replace($class,'',0,strlen($class_strut[0])+1);
$baseUrl=APP_PATH.'../'.$class_strut[0].'/'.basename(LIB_PATH).'/';
}
}
导入所需的类库 同java的Import
本函数有缓存功能
@param string $class 类库命名空间字符串
@param string $baseUrl 起始路径
@param string $ext 导入的文件扩展名