2013-10-08 19 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中声明一个常量(或者在另一个自动加载的文件中),该常量包含应用程序的基本路径,然后使用它。

相关问题