TP框架自动加载优先级
Posted leayrainy
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了TP框架自动加载优先级相关的知识,希望对你有一定的参考价值。
$map = array(‘Think\Log‘=>THINK_PATH.‘Think\Log.php‘,‘Org\Util\Array‘=>THINK_PATH.‘Org\Util\Array.php‘); Think\Think::addMap($map);
以Test\MyClass类为例,自动加载的优先顺序如下:
1.在alias.php中或者addMap方法中判断是否注册了
Test\MyClass类映射,如果有则自动加载类库映射定义的文件;
2.判断是否存在Library/Test目录,有则以该目录为初始目录加载;
3.判断是否有注册Test根命名空间,有则以注册的目录为初始目录加载;
4.如果以上都不成立,则以Test为模块进行初始目录加载;
关于自动加载
1.在library目录下面任意增加新目录=自动注册成一个新的根命名空间。
2.注册新的根命名空间。
‘AUTOLOAD_NAMESPACE‘ => array( ‘My‘ => THINK_PATH.‘My‘, ‘One‘ => THINK_PATH.‘One‘, )new My\Net\IpLocation();
new One\Util\Log();
3.类库映射。 addMap方法和alias.ph配置文件。
$map = array(‘Think\Log‘=>THINK_PATH.‘Think\Log.php‘,‘Org\Util\Array‘=>THINK_PATH.‘Org\Util\Array.php‘); Think\Think::addMap($map);
以上是关于TP框架自动加载优先级的主要内容,如果未能解决你的问题,请参考以下文章