一、引入第三方類庫 .class.php文件php
1.1 類庫有寫namespace命名空間函數
namespace Org\Util;
class Auth {
}
保存到ThinkPHP/Library/Org/Util/Auth.class.php
。(也就是說以Think、Org爲根命名空間的類均可以自動加載:)spa
在其餘Controller中,實例化:code
new \Org\Util\Auth();
1.2 手動加載第三方類庫對象
若是要加載第三方類庫,包括不符合命名規範和後綴的類庫,以及沒有使用命名空間或者命名空間和路徑不一致的類庫,或者你就是想手動加載類庫文件,咱們均可以經過手動導入的方式加載。blog
咱們能夠使用import方法導入任何類庫,用法如:ci
// 導入Org類庫包 Library/Org/Util/Date.class.php類庫 import("Org.Util.Date"); // 導入Home模塊下面的 Application/Home/Util/UserUtil.class.php類庫 import("Home.Util.UserUtil"); // 導入當前模塊下面的類庫 import("@.Util.Array"); // 導入Vendor類庫包 Library/Vendor/Zend/Server.class.php import('Vendor.Zend.Server');
對於import方法,系統會自動識別導入類庫文件的位置,ThinkPHP能夠自動識別的類庫包包括Think、Org、Com、Behavior和Vendor包,以及Library目錄下面的子目錄,若是你在Library目錄下面建立了一個Test子目錄,而且建立了一個UserTest.class.php類庫,那麼能夠這樣導入:io
import('Test.UserTest');
注意,若是你的類庫沒有使用命名空間定義的話,實例化的時候須要加上根命名空間,例如:function
public funcion index(){
import('Test.UserTest');
$test = new \UserTest();
}
三、手動加載第三方普通.php後綴的原生文件class
若是你的第三方類庫都放在Vendor目錄下面,而且都以.php爲類文件後綴,也沒用採用命名空間的話,那麼能夠使用系統內置的Vendor函數簡化導入。 例如,咱們把 Zend \ Filter\Dir.php 放到 Vendor 目錄下面,這個時候 Dir 文件的路徑就是 Vendor\Zend\Filter\Dir.php,咱們使用vendor 方法導入只須要使用:
public function index(){ Vendor('Zend.Filter.Dir'); $obj = new \Dir(); }
另外:若是你的文件是a.b.php(b不是class)的話,也能夠這樣導入:
Vendor('目錄.a#b');
實例化對象時候,以class ab {...}示例:new \ab();
四、手動加載.php後綴且面向過程的文件
什麼叫面向過程,就是文件裏面沒有class aaa{} , 不用實例化操做,直接使用。
咱們能夠使用原生的語法:
在控制器的方法裏面使用:
include_once ‘./ThinkPHP/Library/Vendor/lib/aaa.bbb.php’;
這樣就完美的引入了一些原生面向過程的.php文件。