我有一個班,例如位於/some/path/Class.php
。現在我想創建這個類的一個對象。如何在特定路徑中加載PHP類?
我試過了,但它沒有工作:
$obj = new some/path/Class();
我也試圖包括類中脫穎而出,創建對象以正常的方式,像這樣:
include('/some/path/Class.php');
$obj = new Class();
拋出也是一個錯誤。我如何創建該類的對象?
我有一個班,例如位於/some/path/Class.php
。現在我想創建這個類的一個對象。如何在特定路徑中加載PHP類?
我試過了,但它沒有工作:
$obj = new some/path/Class();
我也試圖包括類中脫穎而出,創建對象以正常的方式,像這樣:
include('/some/path/Class.php');
$obj = new Class();
拋出也是一個錯誤。我如何創建該類的對象?
您使用的包含方法是正確的,問題似乎是對文件的路徑。
所以,你既可以使用相對路徑功能從你從調用它的文件:
include 'some/path/class.php';
或者使用完整路徑:
include '/absolute/root/full/path/class.php';
要找出完整路徑,你可以上傳一個簡單的PHP文件:
echo phpinfo();
然後在該頁上搜索'SCRIPT_FILENAME',這將顯示你從服務器上運行當前文件的絕對路徑。
使用dirname(__FILE__) . '/some/path/Class.php'
其中dirname(__FILE__)
是文件調用這個類的路徑。
include('/some/path/Class.php');
這將開始尋找根文件夾,所以你將不得不提供文件的完整路徑,這顯然沒有意義。
使用類似
dirname(__FILE__)
使用相對路徑。您可能還想在index.php中聲明一個常量(或者在另一個自動加載的文件中),該常量包含應用程序的基本路徑,然後使用它。
第二種方式應該工作,也許你的路徑是不正確的。 什麼是完全錯誤信息? – KURN
拋出什麼錯誤?並且請告訴我們'/ some/path/Class.php的內容' – fab
你能更具體一點,它會拋出什麼樣的錯誤? –