HTML 表單中將多個同名輸入框的 name 屬性設為 name="tags[](帶方括號),PHP 會自動將其接收為陣列 $_POST['tags']。
<form method="post" action="arrayformdata.php">
<label>Tags</label>
<input type="text" name="tags[]"><br>
<input type="text" name="tags[]"><br>
<input type="text" name="tags[]"><br>
<input type="text" name="tags[]"><br>
<input type="text" name="tags[]"><br>
<input type="submit" value="Submit">
</form>
arrayformdata.php<?php
$postedTags = $_POST['tags'] ?? [];
if (empty($postedTags)) {
echo "未收到任何標籤。";
} else {
echo "<h3>接收到的標籤:</h3><ul>";
foreach ($postedTags as $tag) {
$tag = htmlspecialchars(trim($tag));
if ($tag !== '') echo "<li>$tag</li>";
}
echo "</ul>";
}
?>
<input type="text" name="user[name]">
<input type="email" name="user[email]">
<input type="text" name="user[phone]">
// PHP 接收
$user = $_POST['user'] ?? [];
// $user = ['name' => '...', 'email' => '...', 'phone' => '...']
[] **必須成對出現**,否則 PHP 視為普通字串鍵名。$_POST['tags'] 若未傳送則不存在,使用 ?? [] 提供預設空陣列避免 Notice。$_FILES 同樣支援陣列語法:name="files[]。