Inilah yang saya temukan:
Mengirimkan bidang formulir multi-nilai, yaitu mengirimkan array melalui GET / POST vars, dapat dilakukan beberapa cara yang berbeda, karena standar tidak harus dijabarkan.
Tiga cara yang mungkin untuk mengirim bidang multi-nilai atau array adalah:
?cars[]=Saab&cars[]=Audi
(Cara terbaik - PHP membaca ini ke dalam array)
?cars=Saab&cars=Audi
(Bad way- PHP hanya akan mendaftarkan nilai terakhir)
?cars=Saab,Audi
(Belum mencoba ini)
Formulir Contoh
Pada formulir, bidang multi-nilai bisa berbentuk kotak pilih yang disetel ke beberapa :
<form>
<select multiple="multiple" name="cars[]">
<option>Volvo</option>
<option>Saab</option>
<option>Mercedes</option>
</select>
</form>
(CATATAN: Dalam hal ini, penting untuk memberi nama kontrol pilih some_name[]
, sehingga vars permintaan yang dihasilkan akan didaftarkan sebagai array oleh PHP)
... atau sebagai beberapa bidang tersembunyi dengan nama yang sama :
<input type="hidden" name="cars[]" value="Volvo">
<input type="hidden" name="cars[]" value="Saab">
<input type="hidden" name="cars[]" value="Mercedes">
CATATAN: Menggunakan field[]
untuk beberapa nilai sangat buruk didokumentasikan. Saya tidak melihat penyebutan itu di bagian kunci multi-nilai dalam string Kueri - Wikipedia , atau dalam dokumen W3C yang berurusan dengan input multi-pilih.
MEMPERBARUI
Seperti yang ditunjukkan oleh komentator, ini sangat spesifik kerangka kerja. Beberapa contoh:
String kueri:
?list_a=1&list_a=2&list_a=3&list_b[]=1&list_b[]=2&list_b[]=3&list_c=1,2,3
Rel:
"list_a": "3",
"list_b":[
"1",
"2",
"3"
],
"list_c": "1,2,3"
Sudut:
"list_a": [
"1",
"2",
"3"
],
"list_b[]": [
"1",
"2",
"3"
],
"list_c": "1,2,3"
( Diskusi sudut )
Lihat komentar untuk contoh di node.js , Wordpress , ASP.net
Mempertahankan pesanan:
Satu hal lagi yang perlu dipertimbangkan adalah bahwa jika Anda perlu mempertahankan urutan barang-barang Anda (yaitu array sebagai daftar yang dipesan), Anda benar-benar hanya memiliki satu opsi, yang melewati daftar nilai yang dibatasi, dan secara eksplisit mengubahnya menjadi sebuah array sendiri.