php脚本错误调试

时间:2014-12-03 08:37:13

标签: php debugging

我有一个简单的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的第一个echo(文件存在),然后什么都没有 ,脚本停止 感谢。

2 个答案:

答案 0 :(得分:0)

检查php中的错误你使用php错误报告:

error_reporting(-1);
ini_set('display_errors', 'On');

您将该代码放在php代码的顶部。

这将打印出您的PHP代码中的任何错误。

答案 1 :(得分:0)

有时,您需要维护包含的顺序! 当您包含的文件需要一些资源(如类定义,函数体等)时,应首先包含具有这些资源的文件。

但是,如果您在一个文件中编写完整内容,则无需这样做。

如果您确定 include_path 是正确的,那么“无法打开流”,请检查您的open_basedir设置。因此,为了避免任何奇怪的问题和痛苦的调试,请确保您在系统中使用的所有路径在任何地方都具有相同的情况,并且它们与文件系统的实际情况相对应。这包括包含在webserver config/php.ini中设置的路径,自动加载配置,运行时包含路径设置或其他任何位置。

这可能只是因为你所包含的目录超出了open_basedir的范围,阻止了php访问根目录之外的文件(通常)。