unserialize

FunctionParams and return types changed in PHP 8.0

Creates a PHP value from a stored representation.

PHP 5
PHP 7.0
Improved
PHP 7.1-7.4
PHP 8.0
Improved
PHP 8.1
PHP 8.2-8.3
PHP 8.4
PHP 8.5
PHP 8.6

unserialize Function synopsis

unserialize(string $data, array $options = []): mixed

Parameters

$data

Typestring

The serialized string.

$options

OptionalTypearrayDefault value[]

Any options to be provided to unserialize, as an associative array.

Return value

Typemixed

The converted value is returned, and can be a bool, int, float, string, array or object.

In case the passed string is not unserializeable, false is returned and E_WARNING is issued.

Changes to the unserialize Function

PHP 8.0

  • Return type added: mixed
  • Parameter name of parameter #1 changed: $variable_representation to $data
  • Parameter type added for parameter #1 ($data): string
  • Parameter name of parameter #2 changed: $allowed_classes to $options
  • Parameter type added for parameter #2 ($options): array
  • Parameter default value added for position #2 ($options): []
- unserialize($variable_representation, $allowed_classes)
+ unserialize(string $data, array $options = []): mixed

PHP 7.0

  • Optional parameter added - #2: $allowed_classes
- unserialize($variable_representation)
+ unserialize($variable_representation, $allowed_classes)

unserialize Function Availability

PHP VersionAvailability
PHP 8.6Upcoming Release Yes
PHP 8.5Supported (Latest) Yes
PHP 8.4Supported Yes
PHP 8.3Security-Fixes Only Yes
PHP 8.2Security-Fixes Only Yes
PHP 8.1Unsupported Yes
PHP 8.0Unsupported Yes
PHP 7.4Unsupported Yes
PHP 7.3Unsupported Yes
PHP 7.2Unsupported Yes
PHP 7.1Unsupported Yes
PHP 7.0Unsupported Yes
PHP 5.6Unsupported Yes
PHP 5.5Unsupported Yes
PHP 5.4Unsupported Yes
PHP 5.3Unsupported Yes