【发布时间】:2019-02-25 04:21:30
【问题描述】:
我正在尝试为非常古老的 PHP 项目(Symfony 2.2.4、PHPUnit 4.8.36)制作工作测试套件。
当我使用命令行 ./phpunit -c app my/tests/path 运行测试时,我遇到了 symfony 错误,例如:
bindRequest() is deprecated since version 2.1 and will be removed in 2.3. Use FormInterface::bind() instead.
我现在希望运行测试时不出现已弃用或严格错误。该怎么做?
注意:我没有 phpunit 配置文件(也不知道如何创建它)。
注意2:我的php.ini 已经在/etc/php/5.6/cli/php.ini 中将error_reporting 设置为E_ALL & ~E_DEPRECATED & ~E_STRICT
【问题讨论】:
-
添加到你的脚本 "error_reporting(E_ALL & ~(E_STRICT | E_DEPRECATED) ); "
-
@LarsStegelitz 我的 php.ini 中有这个配置。您说将其添加到包含 test 的 .php 脚本文件的顶部?我有很多带有测试的 php 脚本。我必须将它添加到所有文件中吗?没地方设置一次?
-
看消息看起来更像是来自框架,而不是来自 PHP 本身。
-
@LarsStegelitz 如果你认为它来自 Symfony,你知道在哪里配置它吗?注意:运行开发服务器时,deprecated 和 stricts 不会产生致命错误。
-
您尝试过这些解决方案吗? stackoverflow.com/questions/28850809/…