在php,bean中,是否允许使用数组来收集变量?

时间:2017-05-18 08:01:18

标签: java php spring

经典的豆子:

class Person {

    /* Read/Write property*/
    private $_firstName;

    /* Read/Write property*/
    private $_lastName;

    /* Read/Write property*/
    private $_birthdate;

    /* Read/Write property*/
    private $_weight;

    /* Read/Write property*/
    private $_height;

    public function setFirstName($value) {
        $v = trim($value);
        $this->_firstName = empty($v) ? null : $v;
        return $this;
    }

    public function getFirstName() {
        return $this->_firstName;
    }

    public function setLastName($value) {
        $v = trim($value);
        $this->_lastName = empty($v) ? null : $v;
        return $this;
    }

    public function getLastName() {
        return $this->_lastName;
    }

    /* Read only property */
    public function getAge() {
        /* To be implemented based on birthdate */
    }

    public function setBirthdate(Zend_Date $value) {
        $this->_birthdate = $value;
        return $this;
    }

    public function getBirthdate() {
        return $this->_birthdate;
    }

    /* Kg */
    public function setWeight($value) {
        $this->_weight = (float) $value;
        return $this;
    }

    public function getWeight() {
        return $this->_weight;
    }

    /* cm */
    public function setHeight($value) {
        $this->_height = (int) $value;
        return $this;
    }

    public function getHeight() {
        return $this->_height;
    }
}

但如果我将其简化为:

class Person {

    private $data = []; 

    public function setFirstName($value) {
        $v = trim($value);
        $this->data['_firstName'] = empty($v) ? null : $v;
        return $this;
    }

    public function getFirstName() {
        return $this->data['_firstName'];
    }
}

1 个答案:

答案 0 :(得分:1)

没关系,就像地图和班级的区别一样。

`class object{
  private $a,
  private ¥b
 }`

object['a'],object['b']