この記事では主に、文字列をローカルに保存する目的で、変数のデータを文字列に変換できるPHPのシリアル化および逆シリアル化操作を紹介します。逆の動作はデシリアライズと呼ばれます。
データ(変数)のシリアル化(永続化)
は変数のデータを文字列に「変換」しますが、型変換ではなく、文字列をローカルに保存することが目的です。逆の動作はデシリアライズと呼ばれます。
処理:
//序列化 $str = serialize($r1); //保存到本地 file_put_contents("文本文件路径",$str); //从本地取出 $str2 = file_get_contents("文本文件路径"); //反序列化为之前的对象 $v1 = unserialize($str2);
具体例:
<?php $v1 = 1; $v2 = 'abc'; $v3 = array('a'=>1,'bb'=>2.2,'awd',true); $str1 = serialize($v1); $str2 = serialize($v2); $str3 = serialize($v3); //写入文本文件 file_put_contents('./a1.txt', $str1); file_put_contents('./a2.txt', $str2); file_put_contents('./a3.txt', $str3); ?>
<?php $s1 = file_get_contents('./a1.txt'); $s2 = file_get_contents('./a2.txt'); $s3 = file_get_contents('./a3.txt'); $var1 = unserialize($s1); $var2 = unserialize($s2); $var3 = unserialize($s3); echo "<br/>var_dump($var1,$var2,$var3)"; ?>
以上がPHP のシリアル化および逆シリアル化操作の詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。