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

*文
Libérer: 2023-03-18 17:14:01
original
1472 Les gens l'ont consulté

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
)
*/
Copier après la connexion


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
)
*/
Copier après la connexion

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal