【问题标题】:Syntax error when using string concatenation in function argument在函数参数中使用字符串连接时出现语法错误
【发布时间】:2019-04-03 14:53:31
【问题描述】:

使用 php 5.5.38。

简单脚本:

<?php

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


a();

这失败了:

PHP 解析错误:语法错误,意外的 '.',在第 3 行需要 ')'

php 5.5 里面不支持拼接吗?

【问题讨论】:

标签: php php-5.5


【解决方案1】:

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

现在可以提供涉及数字的标量表达式 以及 PHP 以前的上下文中的字符串文字和/或常量 期望一个静态值,例如常量和属性声明 和默认函数参数。

见:Constant expressions

【讨论】:

    【解决方案2】:

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

    【讨论】:

      【解决方案3】:

      没有 php 5.5.38。不支持这种方法。您需要一个 >= 5.6.0

      的 php 版本

      祝你好运

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-02-15
        • 2020-10-30
        • 2018-02-08
        • 2019-11-03
        • 1970-01-01
        • 2019-04-30
        • 1970-01-01
        • 2015-08-22
        相关资源
        最近更新 更多