Open In App

How to use serialize() and unserialize() Function in PHP?

Last Updated : 19 Jul, 2024
Suggest changes
Share
Like Article
Like
Report

In PHP, complex data can not be transported or can not be stored. If you want to execute continuously a complex set of data beyond a single script then these serialize() and unserialize() functions are handy to deal with those complex data structures. The serialize() function just gives a compatible shape to a complex data structure that the PHP can handle that data after that you can reverse the work by using the unserialize() function.

Most often, we need to store a complex array in the database or in a file from PHP. Some of us might have surely searched for some built-in function to accomplish this task. Complex arrays are arrays with elements of more than one data-types or array. But, we already have a handy solution to handle this situation.

PHP serialize() Function

The serialize() is an inbuilt function PHP that is used to serialize the given array. The serialize() function accepts a single parameter which is the data we want to serialize and returns a serialized string.

Syntax

serialize( $values_in_form_of_array )

Example 1: In this example, illustrate the Serialize() function.

PHP
<?php // Complex array  $myvar = array( 'hello', 42, array(1, 'two'), 'apple' ); // Convert to a string  $string = serialize($myvar); // Printing the serialized data  echo $string; ?> 

Output
a:4:{i:0;s:5:"hello";i:1;i:42;i:2;a:2:{i:0;i:1;i:1;s:3:"two";}i:3;s:5:"apple";}

PHP unserialize() Function

The unserialize() is an inbuilt function php that is used to unserialize the given serialized array to get back to the original value of the complex array, $myvar.

Syntax

unserialize( $serialized_array )

Example 2: In this example, illustrate both serialize() and unserialize() functions.

PHP
<?php // Complex array  $myvar = array( 'hello', 42, array(1, 'two'), 'apple' ); // Serialize the above data  $string = serialize($myvar); // Unserializing the data in $string  $newvar = unserialize($string); // Printing the unserialized data  print_r($newvar); ?>  

Output
Array ( [0] => hello [1] => 42 [2] => Array ( [0] => 1 [1] => two ) [3] => apple ) 

Note: For more depth knowledge you can check PHP Serializing Data article.


Next Article

Similar Reads