20250424
[Д] [ObjectArray->Add] Функция добавляет объект в массив объектов, хранящийся в данном классе (аналогично добавлению элемента в массив с помощью []). [Д] [ObjectArray->AddRange] Функция добавляет массив объектов (или объекты, заданные с помощью array) в массив объектов, хранящийся в данном классе. [И] [ObjectArray->Update] Добавление с помощью foreach заменено на AddRange. [Д] [IDuplicated] Добавлен интерфейс реализации дублирования классов. [Д] [IStoredAtSQL] Добавлен интерфейс поддержки моделей и классов, реализующих хранение свойств в SQL базе данных.
This commit is contained in:
		| @@ -196,8 +196,7 @@ trait ObjectArrayLINQTrait | ||||
|         $result = $this->Delete($wherePredicate); | ||||
|  | ||||
|         // Добавляю новые элементы | ||||
|         foreach ($setItems as $item) | ||||
|             $this->Container[] = $item; | ||||
|         $this->AddRange($setItems); | ||||
|  | ||||
|         // Возвращаю результат | ||||
|         return $result; | ||||
|   | ||||
							
								
								
									
										81
									
								
								sources/traits/ObjectArray/ObjectArraySpecialTrait.php
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										81
									
								
								sources/traits/ObjectArray/ObjectArraySpecialTrait.php
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,81 @@ | ||||
| <?php | ||||
|  | ||||
| namespace goodboyalex\php_components_pack\traits\ObjectArray; | ||||
|  | ||||
| use goodboyalex\php_components_pack\classes\ObjectArray; | ||||
|  | ||||
| /** | ||||
|  * Часть кода класса ObjectArray, отвечающая за специальные функции. | ||||
|  * | ||||
|  * @author Александр Бабаев | ||||
|  * @package php_components_pack | ||||
|  * @version 1.0 | ||||
|  * @since 1.0 | ||||
|  */ | ||||
| trait ObjectArraySpecialTrait | ||||
| { | ||||
|     /** | ||||
|      * Очищает массив объектов, хранящийся в данном классе. | ||||
|      * | ||||
|      * @return void | ||||
|      */ | ||||
|     public function Clear (): void | ||||
|     { | ||||
|         // Очищаем массив | ||||
|         unset($this->Container); | ||||
|  | ||||
|         // Создаем новый массив | ||||
|         $this->Container = []; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Добавляет объект в массив объектов, хранящийся в данном классе (аналогично добавлению элемента в массив с | ||||
|      * помощью []). | ||||
|      * | ||||
|      * @param mixed $object Объект, который будет добавлен в массив объектов, хранящийся в данном классе. | ||||
|      * | ||||
|      * @return void | ||||
|      */ | ||||
|     public function Add (mixed $object): void | ||||
|     { | ||||
|         $this->Container[] = $object; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Добавляет массив объектов (или объекты, заданные с помощью array) в массив объектов, хранящийся в данном классе. | ||||
|      * | ||||
|      * @param ObjectArray|array $objects Массив объектов, которые будут добавлены в массив объектов. | ||||
|      * | ||||
|      * @return void | ||||
|      */ | ||||
|     public function AddRange (ObjectArray|array $objects): void | ||||
|     { | ||||
|         // Если передан массив, то не изменяем его, а если передан объект класса ObjectArray, то конвертируем его в массив объектов | ||||
|         $objectsToAdd = is_array($objects) ? $objects : $objects->ToArray(); | ||||
|  | ||||
|         // Добавляем массив объектов | ||||
|         $this->Merge($objectsToAdd); | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Возвращает массив объектов, хранящихся в данном классе. | ||||
|      * | ||||
|      * @return array Массив объектов, хранящихся в данном классе. | ||||
|      */ | ||||
|     public function ToArray (): array | ||||
|     { | ||||
|         return $this->Container; | ||||
|     } | ||||
|  | ||||
|     /** | ||||
|      * Объединяет массив объектов, хранящийся в данном классе, с массивом объектов, переданным в качестве параметра. | ||||
|      * | ||||
|      * @param array $objects Массив объектов, который будет объединен с массивом объектов, хранящимся в данном классе. | ||||
|      * | ||||
|      * @return void | ||||
|      */ | ||||
|     public function Merge (array $objects): void | ||||
|     { | ||||
|         $this->Container = array_merge($this->Container, $objects); | ||||
|     } | ||||
| } | ||||
		Reference in New Issue
	
	Block a user