is_serialized()
Проверяет переданное значение, является ли оно сериализованной строкой.
Если переданное значение не строка, то функция всегда будет возвращать false. Потому что сериализованные данные - это всегда строка.
Не проверяет правильность сериализации, т.е. если сриализованная строка испорчена, то функция все равно определит её как сериализованную строку.
Основа для: maybe_serialize(), maybe_unserialize()
1 раз — 0.000011 сек (очень быстро) | 50000 раз — 0.04 сек (скорость света) | PHP 7.0.8, WP 4.6.1
Хуков нет.
Возвращает
true|false
.
true - переданная строка является сериализованными данными.
false - передано что-то не сериализованное.
Использование
is_serialized( $data, $strict );
- $data(строка) (обязательный)
- Значение, которое нужно проверить, является ли оно сериализованными данными..
- $strict(логический)
- Точная проверка для конца строки. При true строка всегда должна заканчиваться на символ ; или }.
По умолчанию: true
Примеры
#1 Демонстрация проверки сериализованна ли строка
Допустим, у нас есть сериализованная строка из такого массива: array( 'foo'=>'bar' );
is_serialized( 'a:1:{s:3:"foo";s:3:"bar";}' ); //> true // не проверяет правильность сериализации is_serialized( 'a:1:{s:3:"foo";s:3:"bar";' ); //> true // не сериализованные данные is_serialized( 'привет мир' ); //> false is_serialized( array('foo') ); //> false
Список изменений
С версии 2.0.5 | Введена. |
С версии 6.1.0 | Added Enum support. |