問題:
次のような配列を使用して複数の入力フィールドを生成するフォームがあります。彼らの名前 (例: name[] と email[])。 PHP でこれらの入力を取得すると、個々の配列ではなく、連結された文字列が得られます。これらの入力を適切な配列に変換するにはどうすればよいですか?
解決策:
PHP でフォーム入力配列を個別の配列に変換するには:
実装:
$name = $_POST['name']; $email = $_POST['account']; foreach ($name as $key => $n) { // Get the corresponding email address using the key $e = $email[$key]; // Print the values or process them as needed echo "The name is $n and email is $e, thank you\n"; }
例:
次の形式を考えます:
<input type="text" name="name[]" /> <input type="text" name="email[]" /> <input type="text" name="name[]" /> <input type="text" name="email[]" /> <input type="text" name="name[]" /> <input type="text" name="email[]" />
このフォームを送信すると、$_POST配列には次のものが含まれます:
$_POST = [ 'name' => ['name1', 'name2', 'name3'], 'email' => ['email1', 'email2', 'email3'], ];
上記のソリューションを使用すると、フォーム入力に簡単にアクセスして処理できます:
foreach ($_POST['name'] as $key => $n) { $e = $_POST['email'][$key]; echo "The name is $n and email is $e, thank you\n"; }
出力:
The name is name1 and email is email1, thank you The name is name2 and email is email2, thank you The name is name3 and email is email3, thank you
以上がPHP でフォーム入力配列に適切にアクセスして処理する方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。