请问,以下代码有什么问题?这样做的正确方法是什么?
class SomeClass {
var $someVar = trim('some value');
}
我得到的错误:
PHP Parse错误:语法错误, 意外的'(',期待','或';' 在第3行的/tmp/testik.php
非常感谢。
答案 0 :(得分:8)
你不能在那里运行一个功能。对于对象属性,只允许常量值为initialization values。如果需要trim
函数来初始化$ someVar,请在构造函数中运行它:
class SomeClass {
var $someVar;
function __construct() {
$this->someVar = trim('some value');
}
}
答案 1 :(得分:1)
您不能在PHP中使用函数结果设置类变量。指定的值必须是常量字符串或数字。您正在进行的任务类型必须通过构造函数完成。
答案 2 :(得分:1)
试试这个:
class SomeClass {
$someVar = "";
public __construct() {
$this->someVar = trim('some value');
}
}
我认为问题在于,当您声明成员变量时,您无法调用函数。
答案 3 :(得分:0)
您无法使用非常量初始化类属性。参见例如http://www.php.net/manual/en/language.oop5.properties.php