PHP 中的静态函数变量和串联

2024-01-27

考虑以下:

$var = 'foo' . 'bar'; # Not a member of a class, free-standing or in a function.

我一标记$var as static, 然而:

static $var = 'foo' . 'bar';

PHP(WAMP 设置为 5.3.1)抱怨以下错误:

解析错误: 语法错误,意外的“.”,需要“,”或“;”

看来字符串连接是这里的罪魁祸首。


这里发生了什么?有人可以向我解释静态变量的规则吗?


手册指出,在变量范围 http://php.net/manual/en/language.variables.scope.php:

尝试将值分配给这些作为表达式结果的[静态]变量将导致解析错误。

中也有提到静态关键字 http://php.net/oop5.static:

与任何其他 PHP 静态变量一样,静态属性只能使用文字或常量进行初始化;不允许使用表达式。

尽管应该注意的是,无论是否静态,属性都不能使用表达式进行初始化。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

PHP 中的静态函数变量和串联 的相关文章

随机推荐