Comparaison entre la fonction de sérialisation php et la fonction de sérialisation native

墨辰丷
Libérer: 2023-03-31 12:52:01
original
2152 Les gens l'ont consulté

Cet article présente principalement la comparaison des fonctions de sérialisation PHP serialize() et unserialize() avec les fonctions de sérialisation natives de PHP. Les amis dans le besoin peuvent s'y référer.

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 native de PHP.

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

Cela sera plus efficace et surtout compatible avec de nombreux autres langages comme JavaScript.

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

Résumé : Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'étude de chacun.

Recommandations associées :

PHP implémente une connexion de base de données de base, l'exécution d'instructions SQL et des invites d'erreur

php Correspondance régulière et traversée de tableaux

Fonctions de requête de base de données PHP et de correspondance de mot de passe

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