原文地址 http://blog.csdn.net/luguo0816/article/details/6975144
保留学习:
thinkphp
import 默认路径是系统的库目录thinkphp/lib,@表示项目库目录app/lib
convention.php
‘DEFAULT_APP‘ => ‘@‘, // 默认项目名称,@表示当前项目
functions.php
- function import($class, $baseUrl = ‘‘, $ext=‘.class.php‘) {
- static $_file = array();
- static $_class = array();
- $class = str_replace(array(‘.‘, ‘#‘), array(‘/‘, ‘.‘), $class);
- if (‘‘ === $baseUrl && false === strpos($class, ‘/‘)) {
-
- return alias_import($class);
- }
- if (isset($_file[$class . $baseUrl]))
- return true;
- 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, ‘Lib/‘, 0, strlen($class_strut[0]) + 1);
- } elseif (in_array(strtolower($class_strut[0]), array(‘think‘, ‘org‘, ‘com‘))) {
-
-
- $baseUrl = THINK_PATH . ‘/Lib/‘;
- } else {
-
- $class = substr_replace($class, ‘‘, 0, strlen($class_strut[0]) + 1);
- $baseUrl = APP_PATH . ‘/../‘ . $class_strut[0] . ‘/‘ . LIB_DIR . ‘/‘;
- }
- }
- if (substr($baseUrl, -1) != "/")
- $baseUrl .= "/";
- $classfile = $baseUrl . $class . $ext;
- if ($ext == ‘.class.php‘ && is_file($classfile)) {
-
- $class = basename($classfile, $ext);
- if (isset($_class[$class]))
- throw_exception(L(‘_CLASS_CONFLICT_‘) . ‘:‘ . $_class[$class] . ‘ ‘ . $classfile);
- $_class[$class] = $classfile;
- }
-
- return require_cache($classfile);
- }
thinkPHP import @
原文:http://www.cnblogs.com/asdfgh/p/5217577.html