You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
<?php
abstract class ImageCollection extends ArrayIterator { /** * @var string */ protected $class;
/** * @param array $data * @throws ErrorException */ public function __construct($data) { /** * @var $class Image */ $class = $this->class; Image::checkSubClass($class); if (is_null($data) || $data == '') { throw new ErrorException('Empty data.'); } if (!is_array($data)) { $data = json_decode($data, true); if (json_last_error() != JSON_ERROR_NONE) { throw new ErrorException('Unable to convert json-string to array.'); } } foreach ($data as $item_data) { $this->append($class::getInstance($item_data)); } } }
|