Maison > développement back-end > tutoriel php > Comment reconvertir une représentation sous forme de chaîne d'un tableau en un tableau en PHP ?

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

Linda Hamilton
Libérer: 2024-12-04 08:21:13
original
405 Les gens l'ont consulté

How to Convert a String Representation of an Array Back into an Array in PHP?

Comment extraire un tableau d'une représentation imprimée

Étant donné un tableau, vous souhaiterez peut-être imprimer son contenu à l'aide de la fonction print_r() . Cependant, le résultat obtenu sera une représentation sous forme de chaîne du tableau.

Pour reconvertir cette chaîne en tableau, vous pouvez utiliser une fonction personnalisée telle que celle présentée ci-dessous :

function text_to_array($str) {

    // Initialize arrays
    $keys = array();
    $values = array();
    $output = array();

    // Check if the input is an array
    if( substr($str, 0, 5) == 'Array' ) {

        // Parse the input
        $array_contents = substr($str, 7, -2);
        $array_contents = str_replace(array('[', ']', '=>'), array('#!#', '#?#', ''), $array_contents);
        $array_fields = explode("#!#", $array_contents);

        // Process each array field
        for($i = 0; $i < count($array_fields); $i++ ) {

            // Skip the first field (it's empty)
            if( $i != 0 ) {

                $bits = explode('#?#', $array_fields[$i]);
                if( $bits[0] != '' ) $output[$bits[0]] = $bits[1];

            }
        }
    }

    return $output;
}
Copier après la connexion

En appelant cette fonction avec la représentation imprimée de votre tableau comme argument, vous pouvez obtenir les données originales du tableau :

$array_string = print_r($original_array, true);
$new_array = text_to_array($array_string);
Copier après la connexion

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 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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal