20250713 1.1.1
This commit is contained in:
52
sources/models/ObjectArraySerializeOptions.php
Normal file
52
sources/models/ObjectArraySerializeOptions.php
Normal file
@@ -0,0 +1,52 @@
|
||||
<?php
|
||||
|
||||
namespace goodboyalex\php_components_pack\models;
|
||||
|
||||
use Closure;
|
||||
use goodboyalex\php_components_pack\enums\ObjectArraySerializeMethod;
|
||||
|
||||
/**
|
||||
* Класс сообщения состояния.
|
||||
*
|
||||
* @author Александр Бабаев
|
||||
* @package php_components_pack
|
||||
* @version 1.0
|
||||
* @since 1.0
|
||||
*/
|
||||
final class ObjectArraySerializeOptions
|
||||
{
|
||||
/**
|
||||
* @var ObjectArraySerializeMethod $SerializeMethod Метод сериализации/десериализации.
|
||||
*/
|
||||
public ObjectArraySerializeMethod $SerializeMethod;
|
||||
|
||||
/**
|
||||
* @var Closure|null $OnClassTo Функция обратного вызова для сериализации объекта методом JsonEncodeWithToArray.
|
||||
* Она передается в качестве параметра в функцию ToArray и служит для правильного преобразования типа в массив.
|
||||
*/
|
||||
public ?Closure $OnClassTo;
|
||||
|
||||
/**
|
||||
* @var Closure|null $OnClassFrom Функция обратного вызова для десериализации объекта методом
|
||||
* JsonEncodeWithToArray. Она передается в качестве параметра в функцию FromArray и служит для правильного
|
||||
* преобразования массива в тип.
|
||||
*/
|
||||
public ?Closure $OnClassFrom;
|
||||
|
||||
/**
|
||||
* Конструктор.
|
||||
*
|
||||
* @param ObjectArraySerializeMethod $serializeMethod Метод сериализации/десериализации.
|
||||
* @param callable|null $onClassTo Функция обратного вызова для сериализации объекта методом JsonEncodeWithToArray
|
||||
* (для ToArray).
|
||||
* @param callable|null $onClassFrom Функция обратного вызова для десериализации объекта методом
|
||||
* JsonEncodeWithToArray (для FromArray).
|
||||
*/
|
||||
public function __construct (ObjectArraySerializeMethod $serializeMethod = ObjectArraySerializeMethod::Serialize,
|
||||
?callable $onClassTo = null, ?callable $onClassFrom = null)
|
||||
{
|
||||
$this->SerializeMethod = $serializeMethod;
|
||||
$this->OnClassTo = $onClassTo;
|
||||
$this->OnClassFrom = $onClassFrom;
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user