php 面向对象的问题

原创
2016-09-27 14:18:08 803浏览

class testClass{

public $str_md5 = md5('fefsffa');
public static function testFunction(){

//.....
}

}

我的问题是: md5()函数 如上所示使用 为什么会报错?? php 面向对象 中 属性不能用 php自带的方法吗???

回复内容:

class testClass{

public $str_md5 = md5('fefsffa');
public static function testFunction(){

//.....
}

}

我的问题是: md5()函数 如上所示使用 为什么会报错?? php 面向对象 中 属性不能用 php自带的方法吗???

因为文档就明确规定不能这样声明属性。

http://php.net/manual/en/lang...

初始化不可以用函数的(只能用常量),你可以在__constrct里面对$this->str_md5初始化

类的属性不可以直接使用函数赋值吧。
例如在类中,
class One{

public $str = 'abc'; //这样没问题
public $str = md5('abc'); //使用函数赋值则会报错

}
需要定义属性后,再进行赋值。

静态方法不能调用非静态属性

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。