关于thinkphp中——import中@表示的路径
2013-09-29 16:22
141 查看
thinkphp
import 默认路径是系统的库目录thinkphp/lib,@表示项目库目录app/lib
convention.php
'DEFAULT_APP' => '@', // 默认项目名称,@表示当前项目
functions.php
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); } //echo('<br>'.$class.$baseUrl); 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); //LIB_PATH当前项目类库,如果当前项目名为App则LIB_PATH为“./App/Lib” $class = substr_replace($class, 'Lib/', 0, strlen($class_strut[0]) + 1); } elseif (in_array(strtolower($class_strut[0]), array('think', 'org', 'com'))) { //加载ThinkPHP基类库或者公共类库 // think 官方基类库 org 第三方公共类库 com 企业公共类库 $baseUrl = THINK_PATH . '/Lib/'; 4000 } 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中@表示的路径
- 关于thinkphp的几个问题:css路径问题,关联模型,
- 关于thinkphp 框架开启路径重写,无法获取Authorization Header
- ThinkPHP:关于import中@的说明
- 关于python中模块的import路径
- 关于路径和上级目录的表示方法
- 调试用Python C API 写的程序问题还真多,关于import搜索路径的,复制过来,以防忘记
- thinkphp5 关于加载静态资源路径问题
- VC中关于vcxproj : error : 未找到导入的项目“*.props”。请确认 <Import> 声明中的路径
- 【thinkPHP3.1.2】关于文件上传路径
- 初识THINKPHP-->关于路径的问题(xampp下的htdocs为根目录)
- 关于上级目录与上上级目录的表示相对路径
- 关于Windows 2003 ".." 表示父路径解决方法
- ThinkPHP中关于JS文件如何添加类似__PUBLIC__图片路径
- 关于 thinkphp import 文件内容变量失效问题
- thinkphp 路径 (纯转)
- 关于thinkphp 5.1 配置文件的bug
- linux关于readlink函数获取运行路径的小程序
- 【Asp.Net】server.MapPath的几种路径表示方法
- thinkphp的项目路径的问题