我有一个班,例如位于/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
你能更具体一点,它会抛出什么样的错误? –