* [Dictionary, ObjectArray] Исправлен метод сериализации. Теперь классы нормально восстанавливаются.
This commit is contained in:
2025-05-19 07:04:25 +03:00
parent f98a277986
commit 2e684cb862
3 changed files with 12 additions and 4 deletions

View File

@@ -77,7 +77,11 @@ trait ArrayBasicTrait
*/
public function Serialize (): string
{
return json_encode($this->Container);
/**
* ВНИМАНИЕ! Не используйте json_encode для сериализации объектов данного класса, так как он НЕ СОХРАНЯЕТ классы объектов!
* Корректное восстановление объектов невозможно (восстанавливает только как ассоциативный массив).
*/
return serialize($this->Container);
}
/**
@@ -85,6 +89,10 @@ trait ArrayBasicTrait
*/
public function UnSerialize (string $serialized): void
{
$this->Container = json_decode($serialized, true);
/**
* ВНИМАНИЕ! Не используйте json_decode для десериализации объектов данного класса, так как он НЕ ВОССТАНОВЛЯЕТ
* классы объектов! Корректное восстановление объектов невозможно (восстанавливается только как ассоциативный массив).
*/
$this->Container = unserialize($serialized, true);
}
}