BookCollection
class BookCollection extends Collection
Коллекция книг
Methods
Получение данных для запроса через API
Details
at line 36
__construct(Client $client, array $fields = [], int $limit = 10, int $offset)
Конструктор коллекции
in Collection at line 155
$this
setLimit(int $limit)
Установка лимита выборки
Установка/изменение лимита выборки коллекции. Вызывет перезагрузку коллекции если значение лимита изменилось
in Collection at line 206
$this
load(bool $force = false)
Загрузка коллекции
Загрузка осуществляется только после вызова зависимого метода (ленивая загрузка)
in Collection at line 261
$this
setOffset(int $offset)
Установка смещения выборки
Установка/изменение смещения выборки коллекции. Вызывет перезагрузку коллекции если значение смещения изменилось
in Collection at line 301
int
getFullCount()
Получение количества всех элементов без учета лимита
Вернет общее количество элементов необходимое, например, для вычисления постраничной выборки
Пример:
$token = '7c0c2193d27108a509abd8ea84a8750c82b3a520'; // токен для тестового подписчика
$client = new Client($token); // инициализация клиента
$bookCollection = new BookCollection($client, [], '\Lan\Ebs\Sdk\Model\Book', 5, 100); // инициализация коллекции книг
echo $bookCollection->getFullCount(); // Вернет количество элементов без учета лимита
in Collection at line 315
CollectionIterator
getIterator()
Получение нового инстанса итератора коллекции
Итератор для реализации итерируемой коллекции
in Collection at line 345
int
count()
Количество моделей в коллекции
Фактическое число моделей в коллекции
Пример:
$token = '7c0c2193d27108a509abd8ea84a8750c82b3a520'; // токен для тестового подписчика
$client = new Client($token); // инициализация клиента
$bookCollection = new BookCollection($client, [], '\Lan\Ebs\Sdk\Model\Book', 5, 100); // инициализация коллекции книг
echo $bookCollection>getFullCount(); // Вернет количество элементов без учета лимита
in Collection at line 381
array
getData()
Получение коллекции в виде массива
Выгрузка коллекции в массив
Пример:
$token = '7c0c2193d27108a509abd8ea84a8750c82b3a520'; // токен для тестового подписчика
$client = new Client($token); // инициализация клиента
$bookCollection = new BookCollection($client, [], '\Lan\Ebs\Sdk\Model\Book', 1, 10); // инициализация коллекции книг
print_r($bookCollection->getData()); // Вернет количество элементов без учета лимита
in Collection at line 397
Model
reset()
Получение первой модели в коллекции
Вернет первую модель коллекции.
in Collection at line 432
Model
createModel(array $data = null)
Создание модели по переданным данным
Создает модель по ее данным
Пример:
$token = '7c0c2193d27108a509abd8ea84a8750c82b3a520'; // токен для тестового подписчика
$client = new Client($token); // инициализация клиента
$bookCollection = new BookCollection($client, [], '\Lan\Ebs\Sdk\Model\Book', 1, 10); // инициализация коллекции книг
$bookData = [
'id' => 22445,
'name' => 'Свадьба. Сцена в одном действии',
'authors' => 'Чехов А.П.'
];
$book = $bookCollection->createModel($bookData);
in Collection at line 455
Model
end()
Получение последней модели в коллекции
Вернет полделнюю модель коллекции.
in Collection at line 467
protected Client
getClient()
Получение инстанса клиента
in Collection at line 477
int
getLimit()
Получение текущего лимита коллекции
in Collection at line 488
int
getOffset()
Получение текущего смещения коллекции
in Collection at line 499
float
getPages()
Общее количество страниц при заданом лимиите на страницу
at line 52
array
getUrl(string $method, array $params = [])
Получение данных для запроса через API
Метод возвращает данные по запросу к апи (урл, метод запроса, код ответа успешного ответа)