Advertisements

is_serialized

Definition:
function is_serialized( $data ) {}

Check value to find if it was serialized.
If $data is not an string, then returned value will always be false. Serialized data is always a string.

Parameters

  • mixed $data: Value to check to see if was serialized.

Return values

returns:False if not serialized and true if it was.

Source code

function is_serialized( $data ) {

	// if it isn't a string, it isn't serialized

	if ( ! is_string( $data ) )

		return false;

	$data = trim( $data );

 	if ( 'N;' == $data )

		return true;

	$length = strlen( $data );

	if ( $length < 4 )

		return false;

	if ( ':' !== $data[1] )

		return false;

	$lastc = $data[$length-1];

	if ( ';' !== $lastc && '}' !== $lastc )

		return false;

	$token = $data[0];

	switch ( $token ) {

		case 's' :

			if ( '"' !== $data[$length-2] )

				return false;

		case 'a' :

		case 'O' :

			return (bool) preg_match( "/^{$token}:[0-9]+:/s", $data );

		case 'b' :

		case 'i' :

		case 'd' :

			return (bool) preg_match( "/^{$token}:[0-9.E-]+;\$/", $data );

2177

Advertisements

No comments yet... Be the first to leave a reply!

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: