HTML giriş diziler

4 Cevap php
<input name="foo[]" ... >

Ben önce bu kullandım, ama ben bunun için bir şartname varsa o ve ne denir merak ediyorum?

Ben HTML 4.01 Spec onu bulamadı ve çeşitli Google sonuçlarında sonuçlar sadece form verilerini işleme Birçok PHP örnekleri ile birlikte bir "dizi" diyoruz.

4 Cevap

Tarayıcıları bu alanlar için farklı bir şey yapmak gerekiyordu çünkü bildiğim kadarıyla, HTML özellikleri üzerinde hiçbir şey yok. Normalde yapmak ve diğer dilleri gibi PHP, bir diziye ayrıştırmayı yapan biri olarak sadece gönderebilirsiniz.

Ben HTML, PHP olmadığını düşünüyorum.

Bu bir diziye [] ile tüm HTML alanları ayrıştırır.

Yani olabilir

<input type="checkbox" name="food[]" value="apple" />
<input type="checkbox" name="food[]" value="pear" />
<input type="checkbox" name="food[]" value="banana" />

teslim zaman ve PHP $ _POST ['gıda'] bir dizi yapacak, ve bunu gibi unsurları erişebilirsiniz:

echo $_POST['food'][0]; // would output first checkbox selected

veya seçilen tüm değerleri görmek için:

foreach( $_POST['food'] as $v ) {
    print $v;
}

Her neyse, bunun için özel bir isim olduğunu düşünmüyorum

PHP.net bu sayfadaki yorumlarda bazı referanslar ve yönlendirmeler vardır:

http://www.php.net/manual/en/faq.html.php#faq.html.arrays

Torsten XHTML spec uyumluluk kurallarına Bölüm C.8 bir parçası tanımlayıcı olarak adı özniteliği kullanımı için geçerli "diyor. Eğer DTD kontrol Eğer 'name' niteliği hala form elemanları için CDATA'da olarak tanımlandığını göreceksiniz. "

Jetboy buna göre "diyor:

http://www.w3.org/TR/xhtml1/#C_8

adı öznitelik türü XHTML name niteliği kare parantez geçerli değildir, yani, XHTML 1.0 değiştirildi.

Ne olursa olsun, yazma sırasında, W3C validator bir XHTML belge üzerinde bu pick up değildir. "

Ben daha önce böyle bir şey hiç görmedim, ve ben size sorun hakkında daha fazla bilgi verirseniz bu size gerçekten bir cevap vermek için yardımcı olacağını düşünüyorum, bu HTML olmadığından% 99.9999 eminim