文件\获取\内容的相对PHP路径
这似乎是一项简单而常见的任务,但我们无法让它发挥作用: 我们有两个人在做一个项目,两个人都把机器设置为本地服务器,最终有一个生产环境 在我们所有项目的负责人中,PHP如下所示:文件\获取\内容的相对PHP路径,php,Php,这似乎是一项简单而常见的任务,但我们无法让它发挥作用: 我们有两个人在做一个项目,两个人都把机器设置为本地服务器,最终有一个生产环境 在我们所有项目的负责人中,PHP如下所示: $feed = "/lib/php/backend/gateway.php?action=history"; $json = file_get_contents($feed, true); 使其工作的唯一方法是将其设置为完整URL,或者将其设置为localhost,如下所示: $feed = "http://local
$feed = "/lib/php/backend/gateway.php?action=history";
$json = file_get_contents($feed, true);
使其工作的唯一方法是将其设置为完整URL,或者将其设置为localhost,如下所示:
$feed = "http://localhost/lib/php/backend/gateway.php?action=history";
$json = file_get_contents($feed, true);
后者显然适用于我们本地的盒子,可能也适用于生产,但是有没有一种方法可以使用相对路径来更干净一点
$feed = 'http://' . $_SERVER['HTTP_HOST'] . '/lib/php/backend/gateway.php?action=history';
当你尝试这个的时候--
请注意,您要求PHP在计算机上的该路径上打开一个文件。文件没有查询字符串,结果将是该文件中的PHP代码,而不是执行它的结果
当您要求http://localhost/....
,您要求PHP打开一个URL,向执行代码并返回代码输出的web服务器发出HTTP请求
非常不同
但实际上,为什么不将gateway.php中的代码合并到当前文件中呢?没有理由发出HTTP请求在您自己的服务器上执行代码。将
/lib/php/backend/gateway.php?action=history
转换为函数/类方法
例如
此外,无需生成另一个HTTP进程(在本例中是
file\u get\u contents
)我假设您指的是“根相对”路径。
$feed = "/lib/php/backend/gateway.php?action=history";
$json = file_get_contents($feed, true);
function gateway($action)
{
// existing code
}
$json = gateway('history');