[Д] [ObjectArray->Add] Функция добавляет объект в массив объектов, хранящийся в данном классе (аналогично добавлению элемента в массив с помощью []). [Д] [ObjectArray->AddRange] Функция добавляет массив объектов (или объекты, заданные с помощью array) в массив объектов, хранящийся в данном классе. [И] [ObjectArray->Update] Добавление с помощью foreach заменено на AddRange. [Д] [IDuplicated] Добавлен интерфейс реализации дублирования классов. [Д] [IStoredAtSQL] Добавлен интерфейс поддержки моделей и классов, реализующих хранение свойств в SQL базе данных.
54 lines
1.7 KiB
PHP
54 lines
1.7 KiB
PHP
<?php
|
|
|
|
namespace goodboyalex\php_components_pack\classes;
|
|
|
|
use ArrayAccess;
|
|
use Countable;
|
|
use goodboyalex\php_components_pack\interfaces\ISerializable;
|
|
use goodboyalex\php_components_pack\traits\ObjectArray\ObjectArrayBasicTrait;
|
|
use goodboyalex\php_components_pack\traits\ObjectArray\ObjectArrayConstantsTrait;
|
|
use goodboyalex\php_components_pack\traits\ObjectArray\ObjectArrayLINQTrait;
|
|
use goodboyalex\php_components_pack\traits\ObjectArray\ObjectArraySearchAndSortTrait;
|
|
use goodboyalex\php_components_pack\traits\ObjectArray\ObjectArraySpecialTrait;
|
|
use IteratorAggregate;
|
|
|
|
/**
|
|
* Класс, описывающий массив объектов.
|
|
*
|
|
* @author Александр Бабаев
|
|
* @package php_components_pack
|
|
* @version 1.0
|
|
* @since 1.0
|
|
*/
|
|
final class ObjectArray implements ArrayAccess, IteratorAggregate, Countable, ISerializable
|
|
{
|
|
/**
|
|
* @var array $Container Массив объектов, хранящихся в данном классе.
|
|
*/
|
|
private array $Container;
|
|
|
|
// Реализация наследуемых интерфейсов и классов
|
|
use ObjectArrayBasicTrait;
|
|
|
|
// Константы
|
|
use ObjectArrayConstantsTrait;
|
|
|
|
// Поиск элемента
|
|
use ObjectArraySearchAndSortTrait;
|
|
|
|
// LINQ-подобные методы
|
|
use ObjectArrayLINQTrait;
|
|
|
|
// Специальные методы
|
|
use ObjectArraySpecialTrait;
|
|
|
|
/**
|
|
* Конструктор класса.
|
|
*
|
|
* @param array $array Массив объектов, который будет храниться в данном классе.
|
|
*/
|
|
public function __construct (array $array = [])
|
|
{
|
|
$this->Container = $array;
|
|
}
|
|
} |