在函数参数中使用字符串连接时出现语法错误

Syntax error when using string concatenation in function argument

使用 php 5.5.38.

简单脚本:

<?php

function a ($a = 'XXX' . 'TTT') {
    echo 'Hello ' . $a;
}


a();

这失败了:

PHP Parse error: syntax error, unexpected '.', expecting ')' in line 3

php 5.5 不支持连接吗?

此功能是在 PHP 5.6 中添加的。同样的规则适用于 class 属性声明。

It is now possible to provide a scalar expression involving numeric and string literals and/or constants in contexts where PHP previously expected a static value, such as constant and property declarations and default function arguments.

参见:Constant expressions

它像 PHP7 中那样接缝,您可以在函数参数默认值中使用字符串连接,但它没有任何意义。

否 php 5.5.38。不支持此方法。您需要 php 版本 >= 5.6.0

祝你好运