1. <?php
  2. /**
  3. * Serializes arrays of objects for backward compatibility with error logging.
  4. *
  5. * @param array $data The array of objects to serialize.
  6. * @return string The serialized string.
  7. */
  8. function serializeArrayOfObjects(array $data): string
  9. {
  10. $serializedData = serialize($data); // Serialize the array
  11. return $serializedData;
  12. }
  13. /**
  14. * Deserializes a string representing an array of objects.
  15. *
  16. * @param string $serializedData The serialized string.
  17. * @return array The deserialized array.
  18. * @throws InvalidArgumentException If the data is not a valid array.
  19. */
  20. function unserializeArrayOfObjects(string $serializedData): array
  21. {
  22. $data = unserialize($serializedData); // Unserialize the string
  23. if (!is_array($data)) {
  24. throw new InvalidArgumentException("Invalid array data received.");
  25. }
  26. return $data;
  27. }
  28. ?>

Add your comment