Parse error: syntax error, unexpected ':' in ...... "?:"

Parse error: syntax error, unexpected ':' in ...... "?:"

我的一行代码有问题。在本地主机上它运行顺利。在主机上,它显示此错误:

Parse error: syntax error, unexpected ':' in (..../library.php) on line 94

这是第 94 行:

$Pay['environment'] = getenv('PAY_ENV') ?: self::PAY_ENV;

PHP 版本 5.2.17。任何帮助将不胜感激。

直到 PHP 5.3 才添加缩写的 ?: 语法。您将需要使用完整的三元表达式。这样的东西应该可以工作。

$Pay['environment'] = getenv('PAY_ENV') ? getenv('PAY_ENV') : self::PAY_ENV;

http://php.net/manual/en/language.operators.comparison.php#language.operators.comparison.ternary