thinkPHP5 类库包注册

tp5的类库包注册分为自动注册和手动注册

自动注册

我们只需要把自己的类库包目录放入EXTEND_PATH目录(默认为extend,可配置),就可以自动注册对应的命名空间,例如:

我们在extend目录下面新增一个my目录,然后定义一个myTest类( 类文件位于extend/my/Test.php)如下:

namespace my;

class Test 
{
    public function sayHello()
    {
        echo 'hello';
    }
}

我们就可以直接实例化和调用:

$Test = new myTest();
$Test->sayHello();

如果我们在应用入口文件中重新定义了EXTEND_PATH常量的话,还可以改变myTest类文件的位置,例如:

define('EXTEND_PATH','../vendor/');

那么myTest类文件的位置就变成了/vendor/my/File.php

手动注册

也可以通过手动注册的方式注册新的根命名空间,例如:

在应用公共文件中添加下面的代码:

	hinkLoader::addNamespace('my','../application/extend/my/');

如果要同时注册多个根命名空间,可以使用:

	hinkLoader::addNamespace([
    'my'  => '../application/extend/my/',
    'org' => '../application/extend/org/',
]);

也可以直接在应用的配置文件中添加配置,系统会在应用执行的时候自动注册。

'root_namespace' => [
    'my'  => '../application/extend/my/',
    'org' => '../application/extend/org/',
]

最好都实践写下 更好理解

原文地址:https://www.cnblogs.com/buxiangxin/p/7156463.html