Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie eine Schlüsselwertzeichenfolge in ein PHP-Array

So konvertieren Sie eine Schlüsselwertzeichenfolge in ein PHP-Array

WBOY
WBOYOriginal
2023-05-05 22:56:05657Durchsuche

PHP ist eine sehr beliebte serverseitige Skriptsprache mit leistungsstarken Datenverarbeitungsfunktionen. In PHP ist ein Array ein sehr häufig verwendeter Datentyp, der mehrere Werte speichern und auf den entweder über einen numerischen Index oder einen String-Index zugegriffen werden kann. In diesem Artikel erklären wir, wie man ein PHP-Array in einen Schlüsselwert-String umwandelt.

1. Verwenden Sie die Funktion „implode“

Die Funktion „implode“ kann die Elemente im Array in Form von Zeichenfolgen verbinden:

string implode ( string $glue , array $pieces )

$glue ist Wird zum Verbinden einer Reihe von Array-Elementen verwendet. $pieces ist das zu verkettende Array.

Wenn wir ein Array von Schlüssel-Wert-Paaren in eine Schlüssel-Wert-Zeichenfolge umwandeln möchten, können wir die folgenden Schritte ausführen:

$my_array = array("key1" => "value1", "key2" => ; "value2", "key3" => "value3");
$key_value_string = implode("&", array_map(function ($k, $v) { return $k.'='.$v; }, array_keys($my_array) , $my_array));

Dieser Code verkettet das Array $my_array zu einer Schlüsselwertzeichenfolge mit „&“ als Trennzeichen. Unter diesen verbindet die Funktion array_map jedes Schlüssel-Wert-Paar und die Funktion array_keys gibt alle Schlüsselnamen des Arrays zurück. Das Ausgabeergebnis ist:

key1=value1&key2=value2&key3=value3

2. Verwenden Sie die Funktion http_build_query

http_build_query, um das assoziative Array in eine URL-codierte Abfragezeichenfolge umzuwandeln. Die Syntax lautet wie folgt:

string http_build_query ( gemischt $query_data [, string $numeric_prefix [, string $arg_separator [, int $enc_type = PHP_QUERY_RFC1738 ]]] )

$query_data ist das zu konvertierende assoziative Array, $numeric_prefix ist ein optionales numerisches Präfix (Standard ist null) , $arg_separator ist optional. Das ausgewählte Parametertrennzeichen (Standard ist &), $enc_type ist der URL-Kodierungstyp (Standard ist PHP_QUERY_RFC1738).

Wenn wir ein Array von Schlüssel-Wert-Paaren in eine Schlüssel-Wert-Zeichenfolge umwandeln möchten, können wir die folgenden Schritte ausführen:

$my_array = array("key1" => "value1", "key2" => ; "value2", "key3" => "value3");
$key_value_string = http_build_query($my_array);

Dieser Code konvertiert das Array $my_array in einen Schlüsselwert-String. Das Ausgabeergebnis ist:

key1=value1&key2=value2&key3=value3

3. Verwenden Sie die foreach-Schleife. Wenn Sie keine Funktion verwenden möchten, können Sie auch die foreach-Schleife verwenden, um das Array von Schlüssel-Wert-Paaren zu konvertieren eine Schlüsselwertzeichenfolge. Der Beispielcode lautet wie folgt:

$my_array = array("key1" => "value1", "key2" => "value2", "key3" => "value3") ;

$key_value_string = "";

foreach ($my_array as $ key => $value) {

$key_value_string .= urlencode($key).'='.urlencode($value).'&';

}$key_value_string = rtrim($key_value_string, '&');


Dieser Code konvertiert auch das Array $ my_array in ein Schlüsselwertzeichen mit „&“ als Trennzeichenfolge umwandelt, wird die Funktion urlencorde zum URL-Codieren von Sonderzeichen verwendet. Das Ausgabeergebnis ist das gleiche wie bei Methode 1 und Methode 2.

Zusammenfassung

Die oben genannten drei Methoden können PHP-Arrays in Schlüsselwertzeichenfolgen konvertieren. Die Methoden 1 und 2 verwenden integrierte Funktionen, die effizienter sind. Methode 3 verwendet eine foreach-Schleife, die eine große Menge Code erfordert. Wählen Sie einfach nach den tatsächlichen Bedürfnissen. Wenn Sie die Schlüsselwertzeichenfolge in ein Array konvertieren müssen, können Sie außerdem die Funktion parse_str zum Parsen verwenden.

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie eine Schlüsselwertzeichenfolge in ein PHP-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn