_array; } public function setArray($value) { $this->_array = $value; } public function jsonSerialize() { $array = []; foreach ($this->_array as $dbo) { $array[] = is_null($dbo) ? null : $dbo->jsonSerialize(); } return $array; } public static function jsonDeserialize($json) { if (!is_array($json)) { throw new LuDboDeserializeException("Invalid array value"); } $dbo = new self(); $array = []; foreach ($json as $data) { $array[] = LuDbo::deserializeValue($data, static::$_dboClass); } $dbo->setArray($array); return $dbo; } public static function generateSample() { return [ call_user_func([static::$_dboClass, "generateSample"]), call_user_func([static::$_dboClass, "generateSample"]) ]; } }