2013-10-08 23 views
0

我有一個班,例如位於/some/path/Class.php。現在我想創建這個類的一個對象。如何在特定路徑中加載PHP類?

我試過了,但它沒有工作:

$obj = new some/path/Class(); 

我也試圖包括類中脫穎而出,創建對象以正常的方式,像這樣:

include('/some/path/Class.php'); 
$obj = new Class(); 

拋出也是一個錯誤。我如何創建該類的對象?

+1

第二種方式應該工作,也許你的路徑是不正確的。 什麼是完全錯誤信息? – KURN

+3

拋出什麼錯誤?並且請告訴我們'/ some/path/Class.php的內容' – fab

+0

你能更具體一點,它會拋出什麼樣的錯誤? –

回答

1

您使用的包含方法是正確的,問題似乎是對文件的路徑。

所以,你既可以使用相對路徑功能從你從調用它的文件:

include 'some/path/class.php'; 

或者使用完整路徑:

include '/absolute/root/full/path/class.php'; 

要找出完整路徑,你可以上傳一個簡單的PHP文件:

echo phpinfo(); 

然後在該頁上搜索'SCRIPT_FILENAME',這將顯示你從服務器上運行當前文件的絕對路徑。

2

使用dirname(__FILE__) . '/some/path/Class.php'

其中dirname(__FILE__)是文件調用這個類的路徑。

0
include('/some/path/Class.php'); 

這將開始尋找根文件夾,所以你將不得不提供文件的完整路徑,這顯然沒有意義。

使用類似

dirname(__FILE__) 

使用相對路徑。您可能還想在index.php中聲明一個常量(或者在另一個自動加載的文件中),該常量包含應用程序的基本路徑,然後使用它。

相關問題