cs278 / serialization-helpers
Helpers to work with serialized strings
Requires
- php: >=5.3.0
Requires (Dev)
- fabpot/php-cs-fixer: ~1.10
- phpunit/phpunit: ~4.0
This package is not auto-updated.
Last update: 2026-03-10 09:38:41 UTC
README
Helpers for dealing with strings created by the serialize() function in PHP.
Usage
isSerialized($value) — Test if a supplied value is a PHP serialized string,
returns true iff the syntax looks correct. This function may produce false
negatives because Zend PHP’s unserialize() implementation will work on
malformed strings.
isSerialized($value, &$result) — As above but also returns the unserialized
value by reference.
unserialize($input) — Converts the serialized input into a PHP data type,
returns the resulting data type. If an error occurs during the unserialize
operation a SyntaxError will be thrown.
Examples
Test if a value is serialized:
isSerialized($value)
<?php
use Cs278\SerializationHelpers\isSerialized;
isSerialized('b:1');
// bool(false)
isSerialized('d:2.71828');
// bool(true)
Unserialize with error handling:
<?php
use Cs278\SerializationHelpers\unserialize;
use Cs278\SerializationHelpers\Exception\SyntaxError;
try {
return unserialize('s:"foobar";');
} catch (SyntaxError $e) {
$logger->warning('Input, `{input}` was not valid serialized data', array(
'input' => $e->getInput(),
));
return null;
}