PHP - 错误调试

程序第一次很少正常工作.程序中可能出现许多错误,导致PHP解释器生成错误消息.您可以选择这些错误消息的位置.消息可以与其他程序输出一起发送到Web浏览器.它们也可以包含在Web服务器错误日志中.

要在浏览器中显示错误消息,请将 display_errors 配置指令设置为 On .要将错误发送到Web服务器错误日志,请将 log_errors 设置为On.如果你想在两个地方都想要错误消息,可以将它们都设置为On.

PHP定义了一些常量,你可以使用它们来设置 error_reporting 的值,这样只有报告某些类型的错误:E_ALL(除严格通知外的所有错误),E_PARSE(解析错误),E_ERROR(致命错误),E_WARNING(警告),E_NOTICE(通知)和E_STRICT(严格通知).

编写PHP程序时,最好使用支持PHP的编辑器,如 BBEdit Emacs .这些编辑器的一个特殊功能是语法高亮.它会根据这些部分的内容更改程序不同部分的颜色.例如,字符串为粉红色,关键字如if和while为蓝色,注释为灰色,变量为黑色.

另一个功能是引用和括号匹配,这有助于确保你的报价和括号是平衡的.当您键入结束分隔符(如})时,编辑器会突出显示匹配的开头{.

调试程序时需要验证以下几点.

  • 缺少分号 : 每个PHP语句都以分号(;)结尾. PHP不会停止读取语句,直到它达到分号.如果你在行尾省略分号,PHP继续读取下一行的语句.

  • 没有足够的等号 : 当您在比较语句中询问两个值是否相等时,您需要两个等号(==).使用一个等号是一个常见错误.

  • 拼写错误的变量名称 : 如果拼错了变量,那么PHP会将其理解为一个新变量.记住:对于PHP,$ test与$ Test不是同一个变量.

  • 缺少美元符号 : 变量名中丢失的美元符号很难看到,但至少它通常会导致错误消息,以便您知道在哪里查找问题.

  • 令人不安的行情 : 你可以有太多,太少或错误的报价.因此,请检查平衡数量的报价.

  • 缺少括号和大括号 : 它们应该总是成对出现.

  • 数组索引 : 所有数组都应该从零而不是1开始.

此外,正确处理所有错误并将所有跟踪消息定向到系统日志文件中这样如果发生任何问题,它将被记录到系统日志文件中,您将能够调试该问题.