我在php中包含文件有问题。
我有2个文件" settings.php"和" test.php" (托管在localhost中,包含所有xampp的默认设置和" allow_url_include = 1")。
现在。这是文件" settings.php":
的内容<?
define("TEST_INFO","Lorem ipsum");
?>
这是包含&#34; setting.php&#34;:
的文件&#34; test.php的&#34;:
<?
include("http://127.0.0.1/projectFolder/settings.php");
echo(TEST_INFO);
?>
&#34; test.php&#34;的结果是:
注意:使用未定义的常量TEST_INFO - 假设&#39; TEST_INFO&#39;在 第4行的C:\ xampp \ htdocs \ projectFolder \ test.php TEST_INFO
&#34;包括&#34;函数不会发出任何错误或警告,就好像它已正确执行,但包含文件中定义的常量(或任何变量)不起作用。
如果我尝试包含文件&#34; setting.php&#34;没有所有网址,它可以正常工作。 include("settings.php");
但我需要它的工作原理如下:include("http://127.0.0.1/projectFolder/settings.php");
感谢。
答案 0 :(得分:3)
您正在包含来自网址的资源。
define
的PHP(在第二个脚本中)在服务器上执行include()
define
语句在完全不同的脚本中执行(可能在不同的服务器上!)。
如果您想在当前脚本的上下文中执行PHP,那么您必须 include
本地文件而不是 HTTP URL 。