Masalah:
Anda mempunyai borang yang menjana berbilang medan input dengan tatasusunan sebagai nama mereka (cth., nama[] dan e-mel[]). Apabila anda mendapatkan semula input ini dalam PHP, anda akan mendapat rentetan bercantum dan bukannya tatasusunan individu. Bagaimanakah anda boleh menukar input ini kepada tatasusunan yang betul?
Penyelesaian:
Untuk menukar tatasusunan input borang kepada tatasusunan individu dalam PHP:
Pelaksanaan:
$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"; }
Contoh:
Pertimbangkan bentuk berikut:
<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[]" />
Apabila anda menyerahkan borang ini, tatasusunan $_POST akan mengandungi berikut:
$_POST = [ 'name' => ['name1', 'name2', 'name3'], 'email' => ['email1', 'email2', 'email3'], ];
Menggunakan penyelesaian di atas, anda boleh mengakses dan memproses input borang dengan mudah:
foreach ($_POST['name'] as $key => $n) { $e = $_POST['email'][$key]; echo "The name is $n and email is $e, thank you\n"; }
Output:
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
Atas ialah kandungan terperinci Bagaimana untuk Mengakses dan Memproses Tatasusunan Input Borang dengan betul dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!