In diesem Artikel werden wir in die PARSE_STR -Funktion in PHP eintauchen. Diese Funktion wird verwendet, um Abfragesträge in GET -Anforderungen in Variablen umzuwandeln, die in PHP verwendet werden können.
Bei der täglichen PHP -Entwicklung ist die Verarbeitung von Abfragesträgern eine häufigste Anforderung, und die Daten werden normalerweise GET -Anforderungen an Skripte in URLs übertragen. PHP bietet eine hyperglobale $ _get -Variable, die alle Abfrageparameter speichert. In einigen Fällen müssen Sie jedoch möglicherweise die ursprüngliche Abfrage -Zeichenfolge direkt verarbeiten und in eine PHP -Variable konvertieren, und die Funktion PARSE_STR wird zu einer bequemen Option.
In diesem Artikel wird detailliert vorgestellt, wie die Funktion PARSE_STR verwendet wird und seine leistungsstarken Funktionen anhand mehrerer praktischer Beispiele demonstriert.
Die grundlegende Syntax der Parse_str -Funktion lautet wie folgt:
<span class="fun">Parse_str (String $ String, Array & $ Ergebnis): void</span>
Die Parse_str -Funktion enthält zwei Parameter: Der erste Parameter ist der analysierende Abfragebarium, und der zweite Parameter ist ein Array, das mit analysierten Variablen gefüllt wird.
Es ist zu beachten, dass die PARSE_STR -Funktion keinen Wert zurückgibt, daher muss das Ergebnis über den zweiten Parameter erhalten werden. Ab Php 7.2 wird der zweite Parameter zu einem Muss. Wenn der zweite Parameter nicht bereitgestellt wird, meldet Parse_str einen Fehler.
Darüber hinaus decodiert die Parse_str-Funktion automatisch URL-kodierte Zeichenfolgen, sodass Sie die Urldecode-Funktion nicht manuell verwenden müssen.
Hier ist ein einfaches Beispiel, das zeigt, wie die Funktion PARSE_STR verwendet wird:
<?php
$string = 'first_name=John&last_name=Richards&age=30';
parse_str($string, $result);
print_r($result);
In diesem Beispiel wird die Abfragezeichenfolge in ein PHP -Array analysiert, wobei die Array -Tasten variable Namen sind und der Wert der Wert in der Abfragezeichenfolge ist. Das Ausgabeergebnis ist wie folgt:
Array
(
[first_name] => John
[last_name] => Richards
[age] => 30
)
Wenn die Abfragebarstellung Array -Variablen enthält, kann die Parse_str -Funktion auch korrekt analysiert werden. Zum Beispiel:
<?php
$string = 'foo=1&bar[]=1&bar[]=2';
parse_str($string, $result);
print_r($result);
Nach der Parsen wird die Balkenvariable in ein Array umgewandelt:
Array
(
[foo] => 1
[bar] => Array
(
[0] => 1
[1] => 2
)
)
Wenn die [] Syntax nicht verwendet wird, behandelt Parse_str es als normale Variable und behält nur den letzten Wert bei.
Manchmal kann der variable Name in der Abfragezeichenfolge Leerzeichen oder Punktsymbole enthalten. PHP erlaubt keine Leerzeichen oder Punkte in variablen Namen, sodass die Parse_str -Funktion diese Zeichen automatisch in Unterstriche umwandelt. Zum Beispiel:
<?php
$string = 'my name=John&my.email=john@example.com';
parse_str($string, $result);
print_r($result);
Das Ausgabeergebnis ist wie folgt:
Array
(
[my_name] => John
[my_email] => john@example.com
)
Die Parse_str-Funktion decodiert automatisch URL-kodierte Werte, sodass keine zusätzliche Verarbeitung erforderlich ist. Zum Beispiel:
<?php
$string = 'name=John%20Richards&profile_url=http%3A%2F%2Fexample.com%2Fmyprofile';
parse_str($string, $result);
print_r($result);
Das Ausgangsergebnis ist:
Array
(
[name] => John Richards
[profile_url] => http://example.com/myprofile
)
In diesem Artikel sollten Sie ein umfassendes Verständnis der Parse_str -Funktion in PHP haben. Diese Funktion ist ein sehr nützliches Instrument zum Umgang mit Abfragebrägen, insbesondere wenn Sie eine Zeichenfolge in eine PHP -Variable konvertieren müssen. Hoffentlich können die Beispiele in diesem Artikel Ihnen helfen, die Parse_str -Funktion besser anzuwenden und Ihre Entwicklungseffizienz zu verbessern.