1. 程式人生 > >thinkPHP5 類庫包註冊

thinkPHP5 類庫包註冊

新增 params load 重新定義 esp word pan pre 系統

tp5的類庫包註冊分為自動註冊和手動註冊

自動註冊

我們只需要把自己的類庫包目錄放入EXTEND_PATH目錄(默認為extend,可配置),就可以自動註冊對應的命名空間,例如:

我們在extend目錄下面新增一個my目錄,然後定義一個\my\Test類( 類文件位於extend/my/Test.php)如下:

namespace my;

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

我們就可以直接實例化和調用:

$Test = new \my\Test();
$Test->sayHello();

如果我們在應用入口文件中重新定義了EXTEND_PATH常量的話,還可以改變\my\Test類文件的位置,例如:

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

那麽\my\Test類文件的位置就變成了/vendor/my/File.php

手動註冊

也可以通過手動註冊的方式註冊新的根命名空間,例如:

在應用公共文件中添加下面的代碼:

\think\Loader::addNamespace(‘my‘,‘../application/extend/my/‘);

如果要同時註冊多個根命名空間,可以使用:

\think\Loader::addNamespace([
    ‘my‘  => ‘../application/extend/my/‘,
    ‘org‘ => ‘../application/extend/org/‘,
]);

也可以直接在應用的配置文件中添加配置,系統會在應用執行的時候自動註冊。

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

最好都實踐寫下 更好理解

thinkPHP5 類庫包註冊