不能在public_html中包含目录

时间:2015-03-01 21:12:32

标签: php

我需要包含一个库,我直接存储在public_html中。

我似乎无法将其包含在文件abc.php中,该文件也直接存储在public_html下...

 include_once '../sdk-core-php-master';

错误一直告诉我

 PHP Warning:  include_once(../sdk-core-php-master): failed to open stream: No such file or directory in /home/abc/domains/abc.com/public_html/abc.php 

我尝试了许多变化,例如在前面添加更多../但没有运气。得到同样的错误。 请帮忙。谢谢!

4 个答案:

答案 0 :(得分:1)

ATT:

您没有添加扩展程序:

include_once(../sdk-core-php-master):

应该是:include_once('../sdk-core-php-master.php'):

你可以使用魔法常数来处理它。 请参阅此处的参考:PHP Magic Constant

查看你的目录,只需回显如下:

dirname(__FILE__);

所以,写下你的包含文件,如下:

include_once(dirname(__FILE__) . '/sdk-core-php-master');

如果它仍然不起作用,您可以添加注释行,如下所示(这应该有效):

e.g。

<?php
##########-------------start:anticrash--------------##########
##############################################################
##########--------------end:anticrash---------------##########
 include_once '../sdk-core-php-master';
//.............
//other codes
?>

答案 1 :(得分:0)

如果我正确理解您的问题,那么您正在尝试使用php库,这意味着您必须添加.php扩展名,如:

include_once '../sdk-core-php-master.php';

修改:如果您尝试在一个文件夹中添加多个文件,请查看以下问题:How to include() all PHP files from a directory?

答案 2 :(得分:0)

最好使用根驱动器中的文件地址。在变量$ _SERVER ['DOCUMENT_ROOT']中保存站点根目录的地址。已添加到网站根的文件地址。 例如:

  

include_once($_SERVER['DOCUMENT_ROOT'] . "/some-folder/sdk-core-php-master.php");

答案 3 :(得分:0)

感谢大家的回答。我最终修好了。显然,我包含的路径设置不正确。所以我把它重置为

set_include_path('http://www.example.com/');

然后包含文件夹中的每个文件......现在可以使用了。

foreach (glob('sdk-core-php-master/*') as $filename)
{
    include_once $filename;
}