How to use php serialize() and unserialize() Function

30 Sep, 2019
In PHP, the 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 this serialize() and unserialize() functions are handy to deal with those complex data structures. The serialize() function is just given 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.
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 )
serialize( $values_in_form_of_array )
Below program illustrate the Serialize() function.Program:<?php   // Complex array $myvar = array(     'hello',     42,     array(1, 'two'),     'apple');   // Convert to a string $string = serialize($myvar);   // Printing the serialized data echo $string;   ?> 
<?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";}
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";}
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 )
unserialize( $serialized_array )
Below program illustrate both serialize() and unserialize() functions:Program:<?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);   ?> 
<?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
)

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.
PHP-basics
Picked
PHP
Web Technologies
PHP
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.
How to execute PHP code using command line ?
How to Insert Form Data into Database using PHP ?
PHP in_array() Function
How to delete an array element based on key in PHP?
How to pop an alert message box using PHP ?
Top 10 Projects For Beginners To Practice HTML and CSS Skills
Installation of Node.js on Linux
Difference between var, let and const keywords in JavaScript
How to insert spaces/tabs in text using HTML/CSS?
How to fetch data from an API in ReactJS ?