Maison >développement back-end >tutoriel php >php 面向对象的问题
<code>class testClass{ public $str_md5 = md5('fefsffa'); public static function testFunction(){ //..... } } </code>
我的问题是: md5()函数 如上所示使用 为什么会报错?? php 面向对象 中 属性不能用 php自带的方法吗???
<code>class testClass{ public $str_md5 = md5('fefsffa'); public static function testFunction(){ //..... } } </code>
我的问题是: md5()函数 如上所示使用 为什么会报错?? php 面向对象 中 属性不能用 php自带的方法吗???
因为文档就明确规定不能这样声明属性。
http://php.net/manual/en/lang...
初始化不可以用函数的(只能用常量),你可以在__constrct里面对$this->str_md5初始化
类的属性不可以直接使用函数赋值吧。
例如在类中,
class One{
<code>public $str = 'abc'; //这样没问题 public $str = md5('abc'); //使用函数赋值则会报错</code>
}
需要定义属性后,再进行赋值。
静态方法不能调用非静态属性