Maison >développement back-end >tutoriel php >Explication détaillée des opérations de sérialisation et de désérialisation en PHP

Explication détaillée des opérations de sérialisation et de désérialisation en PHP

黄舟
黄舟original
2017-03-22 09:36:541170parcourir

Cet article présente principalement les opérations de sérialisation et de désérialisation en PHP. Vous pouvez convertir les données d'une variable en "chaîne" afin de convertir le caractère La chaîne est stockée localement. . Le comportement opposé est appelé désérialisation.

Sérialisation (persistance) des données (variables)

Convertir les données d'une variable en chaîne, mais ce n'est pas une conversion de type, le le but est de stocker la chaîne localement. Le comportement opposé est appelé désérialisation.
Processus :

//序列化
$str = serialize($r1);
//保存到本地
file_put_contents("文本文件路径",$str);
//从本地取出
$str2 = file_get_contents("文本文件路径");
//反序列化为之前的对象
$v1 = unserialize($str2);

Exemple spécifique :

1. Effectuer une opération de sérialisation dans xxx1.php

<?php
$v1 = 1;
$v2 = &#39;abc&#39;;
$v3 = array(&#39;a&#39;=>1,&#39;bb&#39;=>2.2,&#39;awd&#39;,true);
$str1 = serialize($v1);
$str2 = serialize($v2);
$str3 = serialize($v3);

//写入文本文件
file_put_contents(&#39;./a1.txt&#39;, $str1);
file_put_contents(&#39;./a2.txt&#39;, $str2);
file_put_contents(&#39;./a3.txt&#39;, $str3);
?>

2. Désérialiser dans xxx2.php

<?php
$s1 = file_get_contents(&#39;./a1.txt&#39;);
$s2 = file_get_contents(&#39;./a2.txt&#39;);
$s3 = file_get_contents(&#39;./a3.txt&#39;);
$var1 = unserialize($s1);
$var2 = unserialize($s2);
$var3 = unserialize($s3);
echo "<br/>var_dump($var1,$var2,$var3)";
?>

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn