php関数serialize()とunserialize()の使用方法について簡単に説明します.

2043 ワード

php関数serialize():
この関数の役割は、データをシーケンス化し、PHPの値を格納または転送するのに役立つ格納可能な文字列を返し、そのタイプと構造を失わないようにすることです.だから私たちはcmsデータベースでよくこのような構造を見ます.
一般的に、複雑またはデータ量が多く、別々に格納する必要のないデータを1つの多次元配列にカプセル化してserialize()を介して文字列に変換し、データベースに格納し、必要に応じて取り出して配列に変換して使用し、配列に変換するためにphpのunserialize()を取り出し、前にunを1つ追加しますか.直接例:

$a=array(" "," "," ","  ","  ","www.jb51.net","   ","    ");
$b=serialize($a);
print_r($b);
echo "
"; $c=unserialize($b); print_r($c);

出力結果は次のとおりです.

//  serialize          ,         
a:8:{i:0;s:3:" ";i:1;s:3:" ";i:2;s:3:" ";i:3;s:6:"  ";i:4;s:6:"  ";i:5;s:20:"www.jb51.net";i:6;s:9:"   ";i:7;s:12:"    ";}
 
//  unserialize()         ,    $a       
Array ( [0] =>   [1] =>   [2] =>   [3] =>    [4] =>    [5] => www.jb51.net [6] =>     [7] =>      )


前の複雑な点の2 D配列の例:

$a1=array(
  'name'=>array(" "," ",' '),
  'name_weburl'=>array("   ","www.jb51.net"),
  'all'=>array('       '=>'www.jb51.net')
);
$b1=serialize($a1);
print_r($b1);
echo "
"; $c1=unserialize($b1); print_r($c1);

出力結果は次のとおりです.

//  serialize          ,         
a:3:{s:4:"name";a:3:{i:0;s:3:" ";i:1;s:3:" ";i:2;s:3:" ";}s:11:"name_weburl";a:2:{i:0;s:9:"   ";i:1;s:20:"www.jb51.net";}s:3:"all";a:1:{s:21:"       ";s:20:"www.jb51.net";}}
 
//  unserialize()         ,    $a       
Array ( [name] => Array ( [0] =>   [1] =>   [2] =>   ) [name_weburl] => Array ( [0] =>     [1] => www.jb51.net ) [all] => Array ( [       ] => www.jb51.net ) )