# is_serialized()

URL: https://chugunov.pro/api-wordpress/functions/is_serialized/
Проверено на WordPress 6.9, обновлено 06.08.2026.
Источник: независимый русскоязычный справочник chugunov.pro. Не является официальной документацией WordPress.

Тип: функция.
Появился в версии: 2.0.5.

## Сигнатура

```php
is_serialized( string $data, bool $strict = true ): bool
```

## Описание

Если $data не является строкой, то возвращаемое значение всегда будет false.
Сериализованные данные всегда являются строкой.

## Параметры

- `$data` `string` — обязательный. Значение для проверки, было ли оно сериализовано.
- `$strict` `bool` — необязательный, по умолчанию `true`. Проверять ли строго конец строки.

## Возвращаемое значение

`bool`

## Исходный код

Файл: `wp-includes/functions.php:674`

```php
function is_serialized( $data, $strict = true ) {
	// If it isn't a string, it isn't serialized.
	if ( ! is_string( $data ) ) {
		return false;
	}
	$data = trim( $data );
	if ( 'N;' === $data ) {
		return true;
	}
	if ( strlen( $data ) < 4 ) {
		return false;
	}
	if ( ':' !== $data[1] ) {
		return false;
	}
	if ( $strict ) {
		$lastc = substr( $data, -1 );
		if ( ';' !== $lastc && '}' !== $lastc ) {
			return false;
		}
	} else {
		$semicolon = strpos( $data, ';' );
		$brace     = strpos( $data, '}' );
		// Either ; or } must exist.
		if ( false === $semicolon && false === $brace ) {
			return false;
		}
		// But neither must be in the first X characters.
		if ( false !== $semicolon && $semicolon < 3 ) {
			return false;
		}
		if ( false !== $brace && $brace < 4 ) {
			return false;
		}
	}
	$token = $data[0];
	switch ( $token ) {
		case 's':
			if ( $strict ) {
				if ( '"' !== substr( $data, -2, 1 ) ) {
					return false;
				}
			} elseif ( ! str_contains( $data, '"' ) ) {
				return false;
			}
			// Or else fall through.
		case 'a':
		case 'O':
		case 'E':
			return (bool) preg_match( "/^{$token}:[0-9]+:/s", $data );
		case 'b':
		case 'i':
		case 'd':
			$end = $strict ? '$' : '';
			return (bool) preg_match( "/^{$token}:[0-9.E+-]+;$end/", $data );
	}
	return false;
}
```

## История изменений

- 6.1.0 — Added Enum support.
- 2.0.5 — Introduced.

## Связанные

Используется в: [`wp_targeted_link_rel`](https://chugunov.pro/api-wordpress/functions/wp_targeted_link_rel/), `WP_Customize_Manager::import_theme_starter_content`, [`_list_meta_row`](https://chugunov.pro/api-wordpress/functions/_list_meta_row/), [`maybe_serialize`](https://chugunov.pro/api-wordpress/functions/maybe_serialize/), [`maybe_unserialize`](https://chugunov.pro/api-wordpress/functions/maybe_unserialize/).

Оригинал в официальной документации: https://developer.wordpress.org/reference/functions/is_serialized/
