孙民选个人论坛
鏍囬:
phpcms鍔犺浇pc_base::load_app_class
[鎵撳嵃鏈〉]
浣滆:
admin
鏃堕棿:
2017-11-7 03:07
鏍囬:
phpcms鍔犺浇pc_base::load_app_class
渚嬪锛
$site = pc_base::load_app_class('sites');
澶嶅埗浠g爜
浠h〃鍔犺浇褰撳墠妯″潡涓嬬殑classes閲岄潰鐨剆ites.class.php 涓旈渶瑕佸垵濮嬪寲锛 new鍚庤祴鍊肩粰鍙橀噺锛 鍏变笁涓弬鏁板垎鍒唬琛ㄧ被鍚 妯″潡鍚 鏄惁鍒濆鍖
pc_base::load_app_class('admin','admin',0);
澶嶅埗浠g爜
浠h〃鍔犺浇锛歱hpcms涓媘odules涓嬬殑admin妯″潡涓嬬殑classes閲岄潰鐨勭殑 admin.class.php
(, 涓嬭浇娆℃暟: 0)
涓婁紶
鐐瑰嚮鏂囦欢鍚嶄笅杞介檮浠
婧愮爜锛
public static function load_app_class($classname, $m = '', $initialize = 1) {
$m = empty($m) && defined('ROUTE_M') ? ROUTE_M : $m;
if (empty($m)) return false;
return self::_load_class($classname, 'modules'.DIRECTORY_SEPARATOR.$m.DIRECTORY_SEPARATOR.'classes', $initialize);
}
澶嶅埗浠g爜
鍏宠仈婧愮爜
/**
* 鍔犺浇绫绘枃浠跺嚱鏁
* @param string $classname 绫诲悕
* @param string $path 鎵╁睍鍦板潃
* @param intger $initialize 鏄惁鍒濆鍖
*/
private static function _load_class($classname, $path = '', $initialize = 1) {
static $classes = array();
if (empty($path)) $path = 'libs'.DIRECTORY_SEPARATOR.'classes';
$key = md5($path.$classname);
if (isset($classes[$key])) {
if (!empty($classes[$key])) {
return $classes[$key];
} else {
return true;
}
}
if (file_exists(PC_PATH.$path.DIRECTORY_SEPARATOR.$classname.'.class.php')) {
include PC_PATH.$path.DIRECTORY_SEPARATOR.$classname.'.class.php';
$name = $classname;
if ($my_path = self::my_path(PC_PATH.$path.DIRECTORY_SEPARATOR.$classname.'.class.php')) {
include $my_path;
$name = 'MY_'.$classname;
}
if ($initialize) {
$classes[$key] = new $name;
} else {
$classes[$key] = true;
}
return $classes[$key];
} else {
return false;
}
}
澶嶅埗浠g爜
娆㈣繋鍏変复 孙民选个人论坛 (http://www.sunminxuan.cn/bbs/)
Powered by Discuz! X3.4