Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich auf mehrere Formularfelder mit demselben Namen im $_POST-Array von PHP zugreifen?

Wie kann ich auf mehrere Formularfelder mit demselben Namen im $_POST-Array von PHP zugreifen?

DDD
Freigeben: 2024-11-26 22:39:18
Original
752 Leute haben es durchsucht

How Can I Access Multiple Form Fields with the Same Name in PHP's $_POST Array?

Formularfelder mit doppelten Namensattributen posten

Beim Senden von Formulardaten über eine POST-Anfrage in PHP kann es vorkommen, dass mehrere Eingabeelemente denselben Namen haben Attribut. Dies wirft die Frage auf:

Können Sie auf die Werte für alle Felder mit demselben Namen aus dem $_POST-Array zugreifen?

Die Antwort ist Nein. Nur das letzte Eingabeelement mit dem angegebenen Namen ist in $_POST verfügbar.

Um diese Einschränkung zu umgehen, sollten Sie name="foo[]" für das Eingabenamensattribut verwenden. Dies führt zu einem Array innerhalb von $_POST, das alle Werte der Eingabeelemente mit demselben Namen enthält. Zum Beispiel:

<form method="post">
    <input name="a[]" value="foo">
    <input name="a[]" value="bar">
    <input name="a[]" value="baz">
    <input type="submit">
</form>
Nach dem Login kopieren

In diesem Fall ist $_POST['a'] ein Array mit den Werten „foo“, „bar“ und „baz“.

Das ist Es ist wichtig zu beachten, dass die Verwendung von einfachen Namensattributen ohne [] nicht zum gewünschten Verhalten führt. Dies liegt daran, dass PHP vorhandene Werte in $_POST überschreibt, wenn auf wiederholte Namen gestoßen wird.

Wenn Sie dennoch auf Rohformulardaten zugreifen müssen, können Sie diese aus file_get_contents('php://input') extrahieren. Sie müssen diese Zeichenfolge jedoch manuell in ein Array analysieren.

Das obige ist der detaillierte Inhalt vonWie kann ich auf mehrere Formularfelder mit demselben Namen im $_POST-Array von PHP zugreifen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage