7 个回答

针对你的问题:没什么特别的,开发者个人习惯而已,只要能正常运行喜欢怎么写问题不大。
针对你的贴图:因为是静态变量,给出初始值才更容易处理。
例子

class A {

private $data;
public function __construct() {
    $this->data = array();
}

}
class B {

private $data = array();

}

两者没什么区别,因为你要调用对象必然要先构造它。但是静态属性是不能用构造函数确认初始化的,所以一个初始值就很必要了,如果没有初始值就需要以下的例子了

class A {
    private static $data;
    public static function addDataItem($key, $value) {
        if (! is_array(self::$data)) self::$data = array(); //每次都要判断是不是很烦?
        self::$data[$key] = $value;
        return self;
    }
}

1.首先,这种写法主要是给写代码的人一种类型提示作用,类似参数类型提示;
2.其次,结合代码相应的逻辑可以更加方便进行代码处理,类似对变量进行初始化操作;
3.另外,本人觉得这种编码风格比较不错,因为PHP本身是一种动态类型语言,可以减少某些无意识导致的bug。

就是一个声明,这个类的这个成员变量是一个数组类型

成员变量的类型定义为数组

就是简单的属性声明啊

namespace + array() 这什么写法... php5.3吗

属性声明,其实这样写才是正规写法

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题