如何在特定路径中加载PHP类?

时间:2013-10-08 08:37:55

标签: php class

我有一个类,例如它位于/some/path/Class.php。现在我想创建这个类的对象。

我试过了,但它不起作用:

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

我还尝试将该类包括在内,并以正常方式创建对象,如下所示:

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

也会引发错误。如何创建该类的对象?

3 个答案:

答案 0 :(得分:2)

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

其中dirname(__FILE__)是调用此类的文件的路径。

答案 1 :(得分:1)

您使用的include方法是正确的,问题似乎是文件的路径。

因此,您可以使用您正在调用它的文件中的相对路径:

include 'some/path/class.php';

或使用完整路径:

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

要查找完整路径,您可以上传一个简单的PHP文件:

echo phpinfo(); 

然后在该页面上搜索“SCRIPT_FILENAME”,它将显示当前文件在服务器上运行的绝对路径。

答案 2 :(得分:0)

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

这将开始查看根文件夹,因此您必须提供文件的完整路径,这显然没有意义。

使用类似

的内容
dirname(__FILE__)

使用相对路径。您可能还想在index.php中(或在另一个自动加载的文件中)声明一个常量,该常量包含应用程序的基本路径,然后使用该常量。