Rumah >pembangunan bahagian belakang >tutorial php >Bagaimanakah saya boleh mendapatkan semula input borang HTML secara berkesan sebagai tatasusunan bersarang dalam PHP menggunakan nama input kurungan?

Bagaimanakah saya boleh mendapatkan semula input borang HTML secara berkesan sebagai tatasusunan bersarang dalam PHP menggunakan nama input kurungan?

Mary-Kate Olsen
Mary-Kate Olsenasal
2024-12-05 17:53:15994semak imbas

How can I effectively retrieve HTML form input as nested arrays in PHP using bracketed input names?

Borang Input sebagai Array dalam HTML dan PHP

Dalam borang HTML, anda boleh mewakili medan input dalam format tatasusunan dengan memasukkan kurungan ([]) ke dalam atribut nama input . Pendekatan ini menjadi amat berguna apabila anda mempunyai berbilang input daripada jenis yang sama dan ingin menangkap nilainya secara berstruktur.

Pernyataan Masalah

Pertimbangkan struktur borang berikut:

<form>
    <input type="text" name="levels[level]">
    <input type="text" name="levels[build_time]">

    <input type="text" name="levels[level]">
    <input type="text" name="levels[build_time]">
</form>

Matlamatnya ialah untuk mendapatkan semula nilai input sebagai tatasusunan dalam PHP, disusun sebagai berikut:

Array (
  [1] => Array ( [level] => 1 [build_time] => 123 )
  [2] => Array ( [level] => 2 [build_time] => 456 )
)

Penyelesaian

Untuk mencapai ini, cuma tambah kurungan pada nama input:

<input type="text" name="levels[level][]">
<input type="text" name="levels[build_time][]">

Perubahan ini membolehkan PHP mengumpulkan input secara automatik mengikut kurungan , menjana tatasusunan yang dikehendaki struktur.

Penyelesaian masalah

Masalah Output Awal:

[levels] => Array (
  [0] => Array ( [level] => 1 )
  [1] => Array ( [build_time] => 234 )
  [2] => Array ( [level] => 2 )
  [3] => Array ( [build_time] => 456 )
)

Penyelesaian: Pastikan kurungan diletakkan di hujung daripada atribut nama input:

<input type="text" name="levels[level][]">
<input type="text" name="levels[build_time][]">

Ini akan mencipta tatasusunan berasingan untuk tahap dan build_time.

Contoh Penggunaan:

$levels = $_POST['levels'];

echo $levels['level'][0]; // Output: 1
echo $levels['build_time'][0]; // Output: 123

Kesimpulan

Dengan menggunakan kurungan dalam nama input, anda boleh membuat tatasusunan dalam PHP yang mencerminkan dengan mudah struktur borang HTML anda. Ini memudahkan pengambilan dan pengendalian data.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mendapatkan semula input borang HTML secara berkesan sebagai tatasusunan bersarang dalam PHP menggunakan nama input kurungan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn