我编写了一个函数,其中我使用PHP_INT_MAX~PHP_INT_MAX作为默认参数,但最终得到了'~’的语法错误。声明如下:

public static function isNumberValid($number, $lowerbound = ~PHP_INT_MAX, $upperbound = PHP_INT_MAX)

我通过在声明中设置$lowerbownd = null并将其设置在主体中来修复它,现在它工作得非常好:
if (is_null($lowerbound)){
    $lowerbound = ~PHP_INT_MAX;
}

我只是想知道为什么…

was an RFC relating to this.

10-04 20:28