Php 包含与URL脚本名称同名的文件
当我包含一个位于子目录中的文件时,我得到了一个奇怪的结果。当我试图包含一个与第一个调用方文件同名的文件时,URL中会显示相同的.php文件,它不包含任何内容/空白/无操作。不知道到底发生了什么。 但是,当我更改所需的文件名时,它可以正常工作 我曾试图要求_提供一个名为import.php的文件,该文件位于view/parts/import.php下的子目录中,但什么都没有发生,甚至没有出现错误。但当我将其名称更改为view/parts/v_import.php时,它成功地满足了要求 下面是一个场景 这是我的项目结构: 在import.php中,我声明类_view.php,它负责调用视图文件 在import.php中 它将启动一系列事件来构建页面结构标头、正文 ,页脚等,并将设置所需的模板名称 在class_view.php-view函数中: 机构代码: 在body.php中,您将发现以下代码:Php 包含与URL脚本名称同名的文件,php,include,require,Php,Include,Require,当我包含一个位于子目录中的文件时,我得到了一个奇怪的结果。当我试图包含一个与第一个调用方文件同名的文件时,URL中会显示相同的.php文件,它不包含任何内容/空白/无操作。不知道到底发生了什么。 但是,当我更改所需的文件名时,它可以正常工作 我曾试图要求_提供一个名为import.php的文件,该文件位于view/parts/import.php下的子目录中,但什么都没有发生,甚至没有出现错误。但当我将其名称更改为view/parts/v_import.php时,它成功地满足了要求 下面是一个场
if (isset($data)) {
foreach ($data as $value) {
require_once $value;
}
} else {
echo "No data!";
}
运行xampp1.8.3[PHP:5.5.15]使用require而不是require\u一次是否有效?我没有想到这一点。嗯,是的,奇怪的是,它似乎试图将其自身包含在URL中调用的相同脚本中:/I出现致命错误:无法重新声明class_系统,这意味着它正在调用主外部文件。$tpl的值是多少?您确定它包含目录前缀吗?在viewimport中传递的导入,view仅在调用build_view$tpl之前进行验证。如果您只提供一个文件名,它将首先在当前目录中查找,并且仅在未找到时才使用搜索路径。
private function build_view($tpl)
{
require_once "parts/header.php";
require_once "parts/nav.php";
$data[] = $tpl . ".php";
require_once "parts/body.php";
}
if (isset($data)) {
foreach ($data as $value) {
require_once $value;
}
} else {
echo "No data!";
}