TP5 中引入第三方類庫


通過了解tp5的目錄結構,我們知道其中有兩個目錄是紡織擴展類庫文件的。

extend是放置自定義或者其他類文件的。

vendor目錄是放置composer類庫文件的。

當我們的第三方類庫文件是下載的,而且類文件目錄一層又一層,

我們開發當中要按照tp5的命名規范來做效率就會非常的低,

而且面向對象編程就是拿來即用,何必還要動手去改類文件的源碼。

其實tp5給了我們一種方式去實現不用命名空間來加載第三方的類!

我們將類文件放到extend目錄下,

在控制器中要用到類的話可以通過import(),函數手動引入類文件,

引入方法官方手冊中有說明(架構->自動加載->類庫導入)。

 

    // 引入 extend/qrcode.php
    Loader::import('qrcode', EXTEND_PATH);
    // 助手函數
    import('qrcode', EXTEND_PATH);
    // 引入 extend/wechat-sdk/wechat.class.php
    Loader::import('wechat-sdk.wechat', EXTEND_PATH,'.class.php');
    // 助手函數
    import('wechat-sdk.wechat', EXTEND_PATH,'.class.php');

 

手動引入了類文件后,進行實例化需要特別注意了!

我們需要在 new 類文件()時,在類文件前面加一個 “ \ ” ,即如下:

$obj = new  \Test();

加 ‘\’ 的原因是,tp5的命名空間自動加載規則:自動加載的實現由think\Loader類庫完

成,自動加載規范符合PHP的PSR-4,根據對規則的了解,放在extend目錄下沒有定義

命名空間的類文件,就是全局化的類。實例化全局化的類的話,即用"\"放在類名前表

示此類是全局類,就new一個全局化的類!

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM