我有如下因素的问题时:我有这样的语句的PHP文件(standards.php
):常量不是“填充”,包括从远程服务器的PHP文件
define('CONSTVAR', '/path/');
现在,我已经叫另一个文件untitled.php
,包含此:
include ('standards.php');
echo CONSTVAR;
这将导致一个页面,指出/path/
,常量的值。
目前为止还不错。
但是,当我将standards.php
放在另一个我的网站上并试图从那里包含它(使用include('http://mysite.eu/core/standards.php');
命令)时,它不起作用。常数保持为空,并且我也收到以下错误
警告:main(http://mysite.eu/core/standards.php)[function.main]:无法打开流:权限被拒绝/home/www/this.nl/core/untitled.php on line 28
Warning:main()[function.include]:打开'http://mysite.eu/core/standards.php'失败夹杂物(包含路径= ':在/ usr /本地/ PHP4/LIB/PHP')在/home/www/this.nl/core/untitled.php线路28上
allow_url_include
启用和allow_url_fopen
太。当我在浏览器中输入standards.php
的完整URL时,我得到一个页面结果,所以它不是没有访问权限的问题,对吧?
这里有什么问题?为什么常量应该是全局的,在从远程服务器包含时不会“继承”?
问题不在于常量,而在于外部'include'。当然包含失败,所以文件不是* include * -ed。 – 2012-08-06 14:03:47
哈.....我刚刚看到这个评论。 'upped'^_^ – Neal 2012-08-06 14:05:16
您收录的文件包含什么内容? 它有PHP标签吗? 您必须回显您需要的内容。如果您在PHP标记中定义了常量,则不会到达其他服务器。 只需访问网页浏览器的include文件即可查看返回结果 – 2012-08-06 14:03:38