我知道这个主题已经在 SO 中讨论过,但我无法找到解决方案。
我有assign.php:
$a=1;
要求.php:
require "assign.php";
和 echo.php:
require "require.php"
echo $a;
输出 1. 问题是,当我想从不同位置使用“require.php”时,没有重复文件。例如,
/文件夹/echo.php:
require "../require.php";
echo $a;
不起作用,因为 require.php 试图要求不存在的 /folder/assign.php 。
尝试在 require.php 中使用完整的 url:
require "http://site.com/assign.php";
也不会工作,因为代码没有被包含,而是被编译,并且由于 $a 不是全局的,它是 undefiend 的。
有人告诉我,真的不推荐使用全局变量。
据说使用文件系统完整路径也是危险的。
解决办法是什么?无论 require.php 来自何处,我如何确保 require.php 始终为 assign.php 找到正确的路径?