我有一个简单的php编码错误的问题,我无法找出错误的确切位置,有没有办法调试php脚本?
<?php
$fnC = "./includes/dbConnect.php" ;
if(file_exists($fnC) ) {
require_once($fnC);
echo "$fnC is found" ;
}
else
{
echo "file does not exist : $fnC" ;
}
?>
<?php
$fnF = "./includes/dbFunctions.php" ;
if(file_exists($fnF) ) {
require_once($fnF);
echo "$fnF is found" ;
}
else {
echo "file does not exist : $fnF" ;
}
?>
<?php
foreach($_POST as $key => $i){
print("$key=$i<br>");
}
echo "script finish";
?>
任何线索错误在哪里?包含/中存在 2 个文件,得到了 dbConnect 的第一个回声.php(文件存在)然后什么都没有、脚本停止谢谢。
要检查 PHP 中的错误,请使用 PHP 错误报告:
error_reporting(-1);
ini_set('display_errors', 'On');
你把这段代码放在PHP代码的顶部。
这将打印出您在 PHP 代码中遇到的任何错误。
有时,您需要维护包含的顺序!当要包含的文件需要一些资源(如类定义、函数体等)时,应首先包含具有这些资源的文件。
但是,如果您在单个文件中编写整个内容,则不需要这样做。
如果您确定include_path正确,但收到"无法打开直播",请检查您的open_basedir
设置。因此,为了避免任何奇怪的问题和痛苦的调试,请确保您在系统内使用的所有路径在任何地方都具有相同的大小写,并且它们与文件系统的实际大小写相对应。这包括在Web服务器config/php.ini
,自动加载配置,运行时包含路径设置或其他任何地方设置的包含路径。
这可能仅仅是因为您包含的目录超出了阻止 php 访问根目录之外的文件(通常)open_basedir
的范围。