gpt4 book ai didi

php - 在PHP中使用trigger_error时如何获取正确的行号?

转载 作者:行者123 更新时间:2023-12-03 07:42:41 24 4
gpt4 key购买 nike

我正在使用trigger_error在自定义类中“引发”错误。我的问题是,trigger_error会打印出调用trigger_error的行号。例如,给出以下代码:

01    <?php
02 class Test {
03 function doAction() {
04 $this->doSubAction();
05 }
06
07 function doSubAction() {
08 if(true)
09 trigger_error('Custom error', E_USER_WARNING);
10 }
11 }
12
13 $var = new Test();
14 $var->doAction();
15 ?>

PHP将打印出以下内容:

Warning: Custom error in test.php on line 9



您将如何使PHP返回调用doAction()函数的行(该方法在类外部调用,而忽略内部进行的所有调用),如下所示?

Warning: Custom error in test.php on line 14



编辑:修改了我的示例,使其更接近于我要实现的目标。

最佳答案

最好的办法是设置一个显示完整堆栈跟踪的错误处理程序。

设置自定义错误处理程序,然后在其中调用debug_print_backtrace()。在一般情况下以及在这种特定情况下,您都会发现这很有用。

关于php - 在PHP中使用trigger_error时如何获取正确的行号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/185778/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com