Maison >développement back-end >tutoriel php >Comparaison entre la fonction de sérialisation PHP et les méthodes natives

Comparaison entre la fonction de sérialisation PHP et les méthodes natives

*文
*文original
2017-12-28 09:23:261505parcourir

Cet article présente principalement la comparaison des fonctions de sérialisation PHP Serialize() et unserialize() avec la méthode de sérialisation native PHP. J'espère que cela aide tout le monde.

Il existe en PHP un bon moyen de formater des chaînes et de les convertir en tableaux ou en objets, c'est-à-dire la sérialisation.
Il existe deux façons de sérialiser les variables.

L'exemple suivant, utilisant les fonctions serialize() et unserialize() :

// a complex array
$myvar = array(
 'hello',
 42,
 array(1,'two'),
 'apple'
);

// convert to a string
$string = serialize($myvar);

echo $string;
/* prints
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";}
*/

// you can reproduce the original variable
$newvar = unserialize($string);

print_r($newvar);
/* prints
Array
(
  [0] => hello
  [1] => 42
  [2] => Array
    (
      [0] => 1
      [1] => two
    )

  [3] => apple
)
*/


Il s'agit de la méthode de sérialisation PHP native.

Cependant, en raison de la popularité de JSON ces dernières années, la prise en charge du format JSON a été ajoutée à PHP5.2.

Vous pouvez désormais utiliser les fonctions json_encode() et json_decode() :


// a complex array
$myvar = array(
 'hello',
 42,
 array(1,'two'),
 'apple'
);

// convert to a string
$string = json_encode($myvar);

echo $string;
/* prints
["hello",42,[1,"two"],"apple"]
*/

// you can reproduce the original variable
$newvar = json_decode($string);

print_r($newvar);
/* prints
Array
(
  [0] => hello
  [1] => 42
  [2] => Array
    (
      [0] => 1
      [1] => two
    )

  [3] => apple
)
*/

Ce sera plus efficace, notamment avec JavaScript et de nombreuses autres langues sont compatibles.

Remarque : Pour les objets complexes, certaines informations peuvent être perdues.

Recommandations associées :

Introduction aux exemples de sérialisation de données PHP

Tutoriel de méthode d'objet de sérialisation de sérialisation PHP

Introduction détaillée à la sérialisation et à la désérialisation

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