如何查看 PHP 中哪一行引起了警告

how to see which line caused warning in PHP

我使用的代码位于 code.php 中,用户定义的函数存储在 function.php 中。 函数被多次调用。

执行 code.php 中的代码时 - 我收到以下错误消息。

Warning: in_array() expects parameter 2 to be array, null given in C:\xampp\htdocs\SanskritVerb\function.php on line 1177

function.php 的第 1177 行属于用户定义的函数 'ends'。 我怎么知道 code.php 的哪一行调用了这个函数 'ends' ?

我认为有些语言会显示错误,例如 - 在 code.php

的 Y 行调用的 function.php 的第 X 行出错

如果 PHP 存在这种类型的东西 - 它会节省我的调试时间。

对于这样的任务,您需要分配一个错误处理程序并调用

Exception::getTrace()

获取 Exception 的踪迹。请参阅文档 set_error_handler.

使用 PHP 的 xdebug 扩展可以为您提供更高的跟踪能力,即使没有错误。如果您选择 xdebug,您应该通过向 php.ini 添加行来启用跟踪 xdebug.auto_trace=On xdebug.trace_output_dir=c:\path 无论如何,这取决于你。