20250713 1.1.1

This commit is contained in:
2025-07-13 12:23:08 +03:00
parent 117deab9d8
commit 62762374e0
14 changed files with 386 additions and 41 deletions

View File

@@ -0,0 +1,40 @@
<?php
namespace goodboyalex\php_components_pack\enums;
use goodboyalex\php_components_pack\traits\EnumExtensionsTrait;
/**
* Перечисление типов сериализации массива объектов.
*
* @author Александр Бабаев
* @package php_components_pack
* @version 1.0
* @since 1.1.1
*/
enum ObjectArraySerializeMethod: int
{
// Подключаю расширение для Enum
use EnumExtensionsTrait;
/**
* Сериализация массива объектов с помощью serialize.
*/
case Serialize = 1;
/**
* Сериализация массива объектов с помощью json_encode.
*
* @warning Для корректной работы требуется наличие json_encode в php.ini
* @warning Этот способ сериализации НЕ РЕКОМЕНДУЕТСЯ для массивов объектов, представляющих собой классы, так как
* при десериализации классы не будут созданы: вместо этого будет созданы объекты класса stdClass. Вместо этого
* следует использовать метод JsonEncodeWithToArray.
*/
case JsonEncode = 2;
/**
* Сериализация массива объектов с помощью ToArray, который возвращает массив. Этот массив впоследствии
* сериализуется с помощью json_encode. Десерилизация происходит в обратном порядке.
*/
case JsonEncodeWithToArray = 3;
}