2016-03-08 41 views
0

不知道怎么说这个问题。我在几个场地遇到过这个问题。 代码不产生任何通知/ warniong /错误(它只是管芯)如果: 1 I声明相同的函数名两次 2 I尝试恒定传递给通过参考参数调试php时没有通知/警告/错误

调试可以是因为我不知道是什么导致了它,这可能是前一段时间的改变。

任何想法: 如何预防它? 调试技术?

代码在服务器上运行,而不是在我自己的机器上运行。 感谢您的帮助。

+0

make error_reporting(1); – Deep

回答

0

使用此代码错误报告:

<?php 
ini_set("display_errors", "1"); 
error_reporting(E_ALL); 
?> 
0

首先,您应该启用错误上一行在你的PHP脚本报告。 使用

error_reporting(E_ALL | E_STRICT); 
ini_set('display_errors', 1); // Any syntax errors 

其次,从这个除了你不能在同一个类具有相同名称的声明功能。

三,关于传递一个常量,这是因为你不能通过引用传递一个常量,并且没有办法做。它是不可变的。常量不是变量。

下面的事情可以通过引用传递:

  1. 变量,例如,foo($ A)// foo是功能
  2. 新语句,例如,foo(新foobar的())
  3. 参考从函数返回

没有其他表达式应该通过引用传递。

第四,始终使用异常处理来管理自定义错误。

有关详细信息如何通过引用传递,检查链接Here

+0

这并不能真正解决问题。 这个问题是调试的问题之一,而不是被允许或不允许的。 我意识到我正在尝试的两件事情都是不允许的。 为什么代码停止运行? 但是它们可能发生在编码中。检测它们的路线看起来非常困难。一个简单的错误会更好。看起来这是不可用的。 这是语言的限制吗? –

+0

对于简单或自定义错误,您必须在此处使用异常处理。 – Deep

0

只需粘贴文件

<?php error_reporting(0);?> 

的顶部剿所有错误。或使用

<?php error_reporting(E_ALL);?> 

以获得有意义的错误消息。 关于错误报告的更多信息可以在这里找到: http://php.net/manual/de/function.error-reporting.php

+0

那么,这将抑制错误报告。通过实际打印错误而不是隐藏它们,OP可能会得到更多帮助。无论如何,请始终尝试解释代码解答的含义。为什么他应该在他的代码中发布它,会有什么影响? –