【发布时间】:2018-06-16 03:47:24
【问题描述】:
【问题讨论】:
标签: php phpunit code-coverage xdebug
【问题讨论】:
标签: php phpunit code-coverage xdebug
输出在技术上是正确的,因为 PHP 7.2 现在很聪明,不再需要运行 case 语句。我在https://derickrethans.nl/php7.2-switch.html
上写过这些优化尽管如此,这是不受欢迎的行为,因此 Xdebug 用https://github.com/xdebug/xdebug/commit/0690bf83109228a67dfe14a9a312045435b7b774 修复了这个“错误”——这是 GitHub 上 Xdebug 代码的一部分,但尚未发布。它将进入 Xdebug 2.6.0beta2。
【讨论】:
这(可能)在https://github.com/sebastianbergmann/phpunit/issues/2953 中得到了回答。
【讨论】:
这比 XDebug 更快。更多信息https://github.com/krakjoe/pcov。
XDebuyg 永远是最好的选择,因为它是拥有最多社区和时间的选择。不好的是,与其他道路相比,它通常非常慢。不要忘记更新到最新版本;)。
选项 1. 使用 CONSTANTS 而不是魔术字符串。例如:
class SectionTypes
{
public const APP = 'app';
public const SHARE = 'share';
}
/* ... */
case ($type) {
case SectionTypes::APP:
/* do something */
break;
}
选项 2. 使用串联。例如:
case ($type) {
case 'app'.'':
/* do something */
break;
}
当然,最后一个选项很丑,不是很推荐,但它可以快速帮助你。
【讨论】: