请问,下面的代码有什么问题?正确的方法是什么?
class SomeClass {
var $someVar = trim('some value');
}
我得到的错误:
PHP 解析错误:语法错误, 意外的"(",预期","或";" 在/tmp/testik.php 第 3 行
谢谢。
您不能在那里运行函数。只允许常量值作为对象属性的初始化值。如果需要 trim
函数来初始化$someVar,请在构造函数中运行它:
class SomeClass {
var $someVar;
function __construct() {
$this->someVar = trim('some value');
}
}
你不能在 PHP 中设置带有函数结果的类变量。分配的值必须是常量字符串或数字。您正在执行的赋值类型必须通过构造函数完成。
试试这个:
class SomeClass {
$someVar = "";
public __construct() {
$this->someVar = trim('some value');
}
}
我相信问题是当你像这样声明成员变量时,你不能调用函数。
不能使用非常量初始化类属性。 例如,请参阅 http://www.php.net/manual/en/language.oop5.properties.php。