Maison > développement back-end > tutoriel php > Comment reconvertir une sortie de chaîne PHP `print_r()` en un tableau ?

Comment reconvertir une sortie de chaîne PHP `print_r()` en un tableau ?

DDD
Libérer: 2024-12-02 19:16:16
original
832 Les gens l'ont consulté

How to Convert a PHP `print_r()` String Output Back into an Array?

Comment reconvertir une représentation sous forme de chaîne d'un tableau en tableau

En PHP, lorsque vous imprimez un tableau à l'aide de print_r(), il le convertit en une chaîne formatée visuellement. Bien qu'utile pour le débogage, ce format de chaîne n'est pas directement reconvertible en tableau. Cependant, avec une logique d'analyse personnalisée, il est possible de recréer le tableau d'origine.

Une fonction personnalisée, text_to_array(), a été développée pour gérer cette conversion. Elle fonctionne en :

Analyse de la chaîne :

  • La fonction vérifie d'abord si la chaîne donnée commence par "Array", indiquant qu'elle représente un tableau.
  • Le contenu du tableau, entre crochets, est extrait.
  • Délimiteurs ([, ] et =>) sont remplacés par des caractères d'espace réservé (#!# et #?#) pour faciliter l'analyse.
  • Le contenu du tableau modifié est ensuite divisé en champs individuels au niveau du délimiteur #!#.

Création du nouveau tableau :

  • Pour chaque champ, il utilise le #?# délimiteur pour séparer la clé et la valeur.
  • Si la clé n'est pas vide, elle ajoute la paire clé-valeur au nouveau tableau.

Exemple d'utilisation :

Considérez le tableau suivant :

$a = ['foo' => 'fooMe'];
Copier après la connexion

Après l'avoir converti en chaîne à l'aide de print_r(), vous obtenez :

Array ( [foo] => fooMe )
Copier après la connexion

Passer cette chaîne à la fonction text_to_array() entraînera le tableau d'origine :

$b = text_to_array('Array ( [foo] => fooMe )');
print_r($b);
Copier après la connexion

Cela génère :

Array
(
    [foo] => fooMe
)
Copier après la connexion

Par en implémentant cette logique d'analyse personnalisée, vous pouvez recréer un tableau à partir de sa représentation sous forme de chaîne imprimée, vous permettant de restaurer la fonctionnalité du tableau même après le débogage.

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!

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