Open In App

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

Last Updated : 19 Jul, 2024
Summarize
Comments
Improve
Suggest changes
Like Article
Like
Share
Report
News Follow

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 

// 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 

// 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

three90RightbarBannerImg