【问题标题】:Debugging Wordpress with E_STRICT error reporting使用 E_STRICT 错误报告调试 Wordpress
【发布时间】:2010-11-01 07:47:23
【问题描述】:

我已通过添加到我的 wp-config.php 文件顶部将我的开发环境中的错误报告设置为 E_STRICT:

ini_set( 'error_reporting', E_STRICT );

这显示了许多通过引用传递返回值的地方,例如$wp_the_query = &new WP_Query(); 抛出错误Strict standards: Assigning the return value of new by reference is deprecated in /htdocs/site/wp-settings.php

我希望我可以简单地删除引用运算符而不在其他任何地方破坏它,还是我需要更复杂的解决方案?我希望做得比仅仅关闭 error_reporting 更好,那样会感觉很脏。

我正在运行 Wordpress 2.7.1 mu、PHP 5.2.6 和 Xdebug 2.1.0。

编辑: 除了通过引用传递对象/值之外,还有很多其他警告,包括Redefining already defined constructor for class WP_Object_CacheCreating default object from empty valueNon-static method WP_Http_ExtHTTP::test() should not be called statically 等。与其寻找具体的解决方案,您能否分享处理这种混乱的任何经验代码?我可以修改核心文件,但将来可能会失去能力升级。

【问题讨论】:

    标签: php wordpress coding-style


    【解决方案1】:

    从 PHP5 开始,对象总是通过引用传递,所以这里不需要&。您可以删除它而不必担心。但是,它也没有伤害。

    编辑:您可以在 PHP5 here 中找到有关对象引用的更多信息。

    【讨论】:

    • 谢谢,很高兴知道。我编辑了这个问题,我想我正在寻找寻找严格模式引发的所有各种警告的经验。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-03-23
    • 1970-01-01
    • 2014-05-13
    • 2013-06-19
    • 1970-01-01
    相关资源
    最近更新 更多