首頁 >後端開發 >php教程 >HTML 輸入名稱中的方括號如何在 PHP 中建立陣列?

HTML 輸入名稱中的方括號如何在 PHP 中建立陣列?

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-12-03 20:46:111003瀏覽

How Do Square Brackets in HTML Input Names Create Arrays in PHP?

解開HTML 輸入數組之謎

在HTML 表單領域,您可能遇到過用神秘的方括號裝飾的輸入元素附上他們的名字。這種特殊的表示法引發了對其本質和規範的質疑。

深入研究難以捉摸的 HTML 4.01 規範,這個「功能」仍然明顯缺失。探索 Google 的大量檔案並沒有得出結論性的結果,並參考了「數組」和 PHP 範例。正是在 PHP 領域,這個謎團得以解開。

在 PHP 中,以方括號為字尾的輸入元素會自動解析為陣列。這種特性允許表單提交將多個選定值封裝到單一數組變數中。例如,考慮以下 HTML 片段:

<input type="checkbox" name="food[]" value="apple">
<input type="checkbox" name="food[]" value="pear">

提交表單後,PHP 會建立陣列變數 $_POST['food'],其中包含所選值。您可以使用熟悉的陣列語法存取各個元素:

echo $_POST['food'][0]; // Outputs the first selected fruit (e.g., "apple")

或者,您可以使用foreach 循環迭代所有選定的值:

foreach ($_POST['food'] as $value) {
    print $value; // Outputs each selected fruit (e.g., "apple" and "pear")
}

雖然此行為對於收集非常有價值多個使用者選擇,需要注意的是「HTML 輸入陣列」的概念並不是官方HTML 規範的一部分。這是一個 JavaScript 解析的具體實作。

以上是HTML 輸入名稱中的方括號如何在 PHP 中建立陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn