Comment utiliser la fonction PHP Serialize

Comment utiliser la fonction PHP Serialize
En PHP, il peut être difficile de transporter ou de stocker des structures de données complexes qui s'étendent au-delà d'un seul script. Pour y remédier, le sérialiser () La fonction est disponible qui peut gérer ces structures de données.

Ceci est particulièrement utile lorsque vous travaillez avec des tableaux complexes qui contiennent des éléments de différents types de données ou d'autres tableaux, car il permet à ces structures d'être facilement stockées dans une base de données ou un fichier. Cet article couvre les détails complets de la fonction sérialize () en php ainsi que la syntaxe, les paramètres et un exemple de code.

Qu'est-ce que la fonction sérialize () en php

Le php sérialiser () La fonction peut sérialiser un tableau, un objet ou toute autre structure de données complexe dans une chaîne. Cette chaîne sérialisée peut être stockée dans une base de données, transmise à un autre script PHP ou envoyé sous forme de paramètre dans une demande HTTP.

Lorsque nous voulons récupérer la structure de données d'origine, nous pouvons utiliser le Unserialize () fonction pour désérialiser la chaîne dans sa forme d'origine.

Syntaxe

La syntaxe de la fonction Serialize () est la suivante:

sérialiser ($ valeurs_in_form_of_array)

Paramètre

La fonction Serialize () prend un seul paramètre, qui est le valeur être sérialisé. Il peut s'agir de n'importe quel type de données PHP, y compris des tableaux, des objets et des valeurs scalaires comme les chaînes ou les entiers.

Valeur de retour

La valeur de retour de la fonction sérialize () est une chaîne qui représente la structure de données sérialisée. La chaîne de sortie de cette fonction peut être stockée dans un fichier et des bases de données, ou elle peut être transmise sur un réseau.

La valeur renvoyée est une chaîne qui peut être stockée n'importe où et contient le flux d'octets de la valeur.

La sortie de Serialize () est une chaîne binaire qui peut contenir des octets nuls et doit donc être traité comme tel lorsqu'il est stocké ou manipulé. Il est recommandé de stocker les données sérialisées dans un champ blob (grand objet binaire) dans une base de données, plutôt qu'un champ de charme ou de texte, cela garantira que les octets nuls sont manipulés et enregistrés correctement.

Exemple de code de sérialize () Fonction dans PHP

Cet exemple montre comment utiliser la fonction sérialize () en PHP pour sérialiser un tableau, puis publier les données sérialisées à l'écran à l'aide de l'instruction ECHO:

$ my_array = array ("linuxhint", "php", "tutoriel");
$ serialized_data = serialize ($ my_array);
echo $ serialized_data;
?>

Ici, nous avons créé un tableau avec trois éléments, puis l'avons sérialisé en utilisant le sérialiser () fonction. La commande echo imprimera la chaîne sérialisée à l'écran.

Après avoir exécuté le script, nous verrons la sortie suivante:

a: 3: i: 0; s: 9: "Linuxhint"; i: 1; s: 3: "php"; i: 2; s: 8: "tutoriel";

Cette chaîne peut sembler déroutante, mais elle représente le tableau d'origine sous forme sérialisée. La chaîne représente un tableau avec trois éléments:

Le premier élément a un index de 0 et une valeur de "Linuxhint«, Avec une longueur de corde de 9.

Le deuxième élément a un index de 1 et une valeur de "Php«, Avec une longueur de corde de 3.

Le troisième élément a un index de 2 et une valeur de "Didacticiel«, Avec une longueur de corde de 8.

La notation utilisée ici est spécifique au format de sérialisation intégré de PHP, qui est utilisé pour stocker et transférer des structures de données complexes entre différentes applications, systèmes ou plateformes. Les chaînes sérialisées peuvent être converties à leurs structures de données PHP d'origine en utilisant le Unserialize () fonction.

Pourquoi nous avons besoin de sérialiser () Fonction en php

Voici une liste de certaines fonctionnalités de la raison pour laquelle nous utilisons le sérialiser () Fonction en php:

  • Pour stocker des structures de données complexes: La fonction Serialize () permet aux structures de données complexes telles que les tableaux, objets et autres types de données d'être facilement stockés dans une base de données ou un fichier.
  • Pour passer des données entre différents systèmes: La fonction Serialize () fournit un moyen de transmettre des structures de données complexes entre différents systèmes, car les données sérialisées peuvent être transmises sous forme de chaîne et désérialisées à l'extrémité de réception.
  • Pour maintenir l'intégrité des données: Cette fonction garantit que la structure des données reste intacte pendant le stockage ou la transmission, par opposition à stocker ou transmettre des éléments individuels séparément.
  • Pour enregistrer la mémoire: Il peut aider à enregistrer la mémoire en réduisant la taille de la structure de données lorsqu'elle est stockée ou transmise sous forme de chaîne sérialisée, au lieu de stocker ou de transmettre chaque élément séparément.
  • Pour simplifier la gestion des données: Le serialize () simplifie la gestion des données en fournissant un moyen standardisé de stocker et de récupérer des structures de données complexes, en réduisant la quantité de code nécessaire pour gérer ces structures.

Différence entre la sérialisation et le codage en php

La sérialisation et le codage sont deux concepts différents en PHP.

Sérialisation Le processus de conversion d'un objet ou d'une structure de données en un format de chaîne peut être stocké ou transmis.

Par exemple, Lorsque nous voulons enregistrer l'état d'un objet dans un fichier ou une base de données, ou lorsque nous devons passer un objet entre différentes parties d'une application. Dans PHP, la fonction sérialize () est utilisée pour sérialiser les objets ou les structures de données dans un format de chaîne.

Codage, D'un autre côté, est le processus de conversion des données d'un format en un autre. Dans le contexte de PHP, l'encodage est souvent utilisé pour convertir une chaîne de caractères en un format qui peut être transmis en toute sécurité sur Internet.

Par exemple, La fonction urlencode () est utilisée pour coder une chaîne à utiliser dans une URL, et la fonction htmlentitités () est utilisée pour coder des caractères spéciaux dans HTML.

En résumé, la sérialisation est le processus de conversion d'un objet ou d'une structure de données en un format de chaîne, tandis que l'encodage est le processus de conversion des données d'un format en un autre.

Conclusion

La fonction Serialize () peut nous aider à stocker et à récupérer des structures de données complexes en php. En comprenant les bases de cette fonction, nous pouvons facilement gérer et stocker des données complexes dans les applications PHP. Pour plus de détails sur le sérialiser () fonction, lisez l'article.