PHP:“默认”参数RFC为什么被拒绝?

PHP:“默认”参数RFC为什么被拒绝?,php,Php,如果stackoverflow不是合适的地方,我深表歉意。我只是想弄明白为什么PHP团队会对这个RFC投反对票: 基本上,它建议以下代码是有效的: function foo($a, $b = "2", $c = "3") { echo "$a $b $c"; } foo(1, default, 5); // prints "1 2 5" 这对我来说是个好主意。。。为什么要拒绝它?因为这是一个更好的解决方案(尽管这个RFC已经停止了3年) 引述的理由如下: 基本上,即使不必为某些 参数

如果stackoverflow不是合适的地方,我深表歉意。我只是想弄明白为什么PHP团队会对这个RFC投反对票:

基本上,它建议以下代码是有效的:

function foo($a, $b = "2", $c = "3") {
    echo "$a $b $c";
}

foo(1, default, 5); // prints "1 2 5"
这对我来说是个好主意。。。为什么要拒绝它?

因为这是一个更好的解决方案(尽管这个RFC已经停止了3年)

引述的理由如下:

基本上,即使不必为某些 参数在某些情况下可能有用,这种方法没有 感觉不错,我们真的更喜欢命名参数之类的东西 (即使此RFC与命名参数不兼容,并且 最有可能的情况是,它不适用于PHP7.0)

其中一位落选者,@philstu

虽然我很高兴斯塔斯不辞辛劳地做到了这一点,但我更高兴的是人们否决了这一点这是命名参数的创可贴解决方案,我真的希望我们能在PHP 7.x的更高版本中看到它们。


是的,这样的问题是不存在的。会在哪里呢?也许发邮件给作者?stas@php.net
htmlspecialchars($string, default, default, false);
// vs
htmlspecialchars($string, double_encode => false);