PHP 需要 Link
PHP require Link
当尝试从我的 PHP 文件的根目录 link 时,我无法加载该文件。它工作正常,除非我将文件路径添加为绝对路径,如下所示:
<link href="/supportfiles/subheader/css/css.css" rel="stylesheet" type="text/css">
<div id="subheadingContainer">
<div id="allContentContainer">
<?php
if (count($loggedIn["directReports"]) != 0 ) {
require("/supportfiles/subheader/itemshtml/inbox.php");
} else {
require("/supportfiles/subheader/itemshtml/myrequests.php");
}
?>
</div>
</div>
知道为什么如果我 ../ 它工作正常但如果我硬编码它却不行吗?这是一个支持标题文件,所以我在目录的多个级别使用它,我认为它应该从根目录开始硬编码。
当你在PHP中使用绝对路径时,/
指的是你的文件系统的根目录,而不是你的网络应用程序的根目录,这意味着如果你想使用绝对路径你必须使用路径,就像您从文件管理器访问一样,而不是从浏览器访问。
例如假设您正在使用 apache linux 并且您的 apache 服务器的根目录是 /var/www/
那么您将不得不输入:
require("/var/www/supportfiles/subheader/itemshtml/inbox.php");
如果您不确定您的文档根目录,您可以使用 PHP 的 $_SERVER['DOCUMENT_ROOT']。因此,在您的情况下,只需将 $_SERVER['DOCUMENT_ROOT'] 放在任何绝对路径之前,这一定可以正常工作。例如:
require $_SERVER['DOCUMENT_ROOT'] . '/supportfiles/subheader/itemshtml/inbox.php';
当尝试从我的 PHP 文件的根目录 link 时,我无法加载该文件。它工作正常,除非我将文件路径添加为绝对路径,如下所示:
<link href="/supportfiles/subheader/css/css.css" rel="stylesheet" type="text/css">
<div id="subheadingContainer">
<div id="allContentContainer">
<?php
if (count($loggedIn["directReports"]) != 0 ) {
require("/supportfiles/subheader/itemshtml/inbox.php");
} else {
require("/supportfiles/subheader/itemshtml/myrequests.php");
}
?>
</div>
</div>
知道为什么如果我 ../ 它工作正常但如果我硬编码它却不行吗?这是一个支持标题文件,所以我在目录的多个级别使用它,我认为它应该从根目录开始硬编码。
当你在PHP中使用绝对路径时,/
指的是你的文件系统的根目录,而不是你的网络应用程序的根目录,这意味着如果你想使用绝对路径你必须使用路径,就像您从文件管理器访问一样,而不是从浏览器访问。
例如假设您正在使用 apache linux 并且您的 apache 服务器的根目录是 /var/www/
那么您将不得不输入:
require("/var/www/supportfiles/subheader/itemshtml/inbox.php");
如果您不确定您的文档根目录,您可以使用 PHP 的 $_SERVER['DOCUMENT_ROOT']。因此,在您的情况下,只需将 $_SERVER['DOCUMENT_ROOT'] 放在任何绝对路径之前,这一定可以正常工作。例如:
require $_SERVER['DOCUMENT_ROOT'] . '/supportfiles/subheader/itemshtml/inbox.php';