Maison > Article > développement back-end > php json vs sérialisation/désérialisation xml
La sérialisation et la désérialisation d'objets sont souvent utilisées dans le développement Web. Les plus courantes sont la sérialisation et la désérialisation du format json et du format xml. Aujourd'hui, je voulais écrire une petite démo de jsop, mais j'ai découvert que je ne pouvais pas utiliser php. sérialisation. J'ai vérifié les informations et pris une note. Sérialisation/désérialisation au format json simple
. PHP fournit les fonctions json_encode et json_decode pour sérialiser/désérialiser des objets au format json
$data=array('Name'=>'Byron','Age'=>24,'Sex'=>'Male','Friends'=>array('Cas
Sérialisation/désérialisation au format XML de tableau simple
PHP fournit les fonctions wddx_serialize_value et wddx_deserialize pour sérialiser/désérialiser des objets au format XML
$data=array('Name'=>'Byron','Age'=>24,'Sex'=>'Male','Friends'=>array('Cas
Bien que le format de sortie soit étrange en raison du transcodage HTML, la chaîne sérialisée ressemble en réalité à ceci
Par rapport au format json, il y a beaucoup plus de champs
Sérialisation/désérialisation d'objets complexes au format json Souvent, lorsque nous opérons, l'objet que nous traitons n'est pas un simple tableau, mais un objet personnalisé, json_encode et json_decode. également compétent. Personnalisez un objet avec un contenu similaire au tableau ci-dessus
class Me { public $name; public $age; public $friends; function __construct($name,$age,$friends) { $this->name=$name; $this->age=$age; $this->friends=$friends; } }
$me1=new Me('Byron',24,array('Casper','Frank','Vincent')); $me2=new Me('Casper',25,array('Byron','Frank','Vincent')); $me3=new Me('Frank',26,array('Casper','Byron','Vincent')); //创建一个复杂的数组,子元素是自定义类,自定义类中包含数组字段 $array_me=array($me1,$me2,$me3); $json=json_encode($array_me); //序列化对象数组为json字符串 echo $json.'<br/>'; $a=json_decode($json); //将json字符串反序列化为对象数组 foreach ($a as $aa) { echo $aa->name.'<br/>'; }
Vous pouvez voir que le format de chaîne sérialisée est très conforme aux attentes. Sérialisation/désérialisation d'objets complexes au format XML. Les fonctions wddx_serialize_value et wddx_deserialize sont également capables d'effectuer des opérations de sérialisation/désérialisation au format XML sur des objets complexes. Utilisez l'objet tout à l'heure comme exemple
$me1=new Me('Byron',24,array('Casper','Frank','Vincent')); $me2=new Me('Casper',25,array('Byron','Frank','Vincent')); $me3=new Me('Frank',26,array('Casper','Byron','Vincent')); //创建一个复杂的数组,子元素是自定义类,自定义类中包含数组字段 $array_me=array($me1,$me2,$me3); $xml=wddx_serialize_value($array_me); //序列化对象数组为xml字符串 echo $xml.'<br/>'; $a=wddx_deserialize($xml); //将xml字符串反序列化为对象数组 foreach ($a as $aa) { echo $aa->name.'<br/>'; }.
La structure de chaîne XML générée ressemble à ceci
Enfin, je suis nouveau sur PHP. Il y a de nombreuses erreurs dans les articles, j'espère que tout le monde pourra les critiquer et les corriger.
Pour plus d'articles liés à la sérialisation/désérialisation php json et xml, veuillez faire attention au site Web PHP chinois !