Maison >développement back-end >tutoriel php >Comment désérialiser une chaîne sérialisée PHP ?

Comment désérialiser une chaîne sérialisée PHP ?

Susan Sarandon
Susan Sarandonoriginal
2024-12-05 00:30:10990parcourir

How to Unserialize a PHP Serialized String?

Comprendre et désérialiser les chaînes sérialisées

Dans votre cas, vous disposez d'une chaîne sérialisée au format suivant :

a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}

Pour répondre à vos questions :

Quel type de chaîne est ceci ?

Il s'agit d'une chaîne sérialisée, une représentation d'un tableau dans un format spécifique. Il code des informations sur le tableau, y compris les paires clé-valeur et les types de valeurs.

Comment puis-je le désérialiser et en extraire le tableau ?

Vous peut désérialiser cette chaîne en utilisant la fonction unserialize() de PHP. Voici un exemple :

$str = 'a:2:{i:0;s:7:"Abogado";i:1;s:7:"Notario";}';
$result = unserialize($str);

Le résultat de print_r($result) sera :

Array ( [0] => Abogado [1] => Notario )

Remarques importantes :

  • Les chaînes sérialisées peuvent renvoyer FALSE s'il y a une erreur ou si elles représentent une valeur FALSE sérialisée. Comparer la chaîne avec serialize(false) ou intercepter l'exception E_NOTICE peut gérer ces cas.
  • Pour des raisons de sécurité, ne désérialisez pas les entrées utilisateur non fiables. La non-sérialisation peut exécuter du code et des utilisateurs malveillants peuvent l'exploiter. Envisagez plutôt d'utiliser un format d'échange de données plus sûr comme JSON.

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