1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859 |
- <?php
- /**
- * Created by PhpStorm.
- * User: robin
- * Date: 6/16/16
- * Time: 1:48 PM
- */
-
- namespace Luticate\Utils\Dbo;
-
-
- class LuDboArray extends LuDbo
- {
- protected static $_dboClass = LuDbo::class;
-
- /**
- * @var mixed[]
- */
- protected $_array;
- public function getArray()
- {
- return $this->_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"])
- ];
- }
- }
|