Heim >Backend-Entwicklung >PHP-Tutorial >Wie konvertiere ich eine String-Darstellung eines Arrays in PHP zurück in ein Array?
So extrahieren Sie ein Array aus einer gedruckten Darstellung
Bei einem gegebenen Array möchten Sie möglicherweise dessen Inhalt mit der Funktion print_r() drucken . Die resultierende Ausgabe ist jedoch eine Zeichenfolgendarstellung des Arrays.
Um diese Zeichenfolge wieder in ein Array umzuwandeln, können Sie eine benutzerdefinierte Funktion wie die unten gezeigte verwenden:
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; }
Durch Aufrufen dieser Funktion mit der gedruckten Darstellung Ihres Arrays als Argument können Sie die ursprünglichen Array-Daten erhalten:
$array_string = print_r($original_array, true); $new_array = text_to_array($array_string);
Das obige ist der detaillierte Inhalt vonWie konvertiere ich eine String-Darstellung eines Arrays in PHP zurück in ein Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!