2012-08-22 15 views
9

jQuery .serialize()% PHP http_build_query ilk "[]" % içine 5B0% 5D, bunun Yani vb% içine ikinci 5B1% 5D, çevirmek gibi görünüyor 5D% 5B% ve% 5B0 arasındaki fark nedir?

5B% içine "[]" döner bir çeşit sayaç kullanıyor gibi görünüyor.

Neredeyse aynı özdeş fonksiyonlarda neden farklılıklar vardır?

Sadece tarayıcım onları farklı kılıyor mu? Http_build_query'nin ekstra sayacı eklemediğinden nasıl emin olabilirim (ya da jQuery'nin ekstra sayaca ihtiyacım olduğunu bilmesine izin ver).

+1

İkinci durumda '[1]' kodlamadığınızdan emin misiniz? – cheeken

+2

'% 5B',' '' kodlu sürümüdür. Orada var olan '0', sıfırlanmış bir veridir ve kodlanmış verilerin bir parçası değildir. ''% 5D' '' 'kodlu sürümüdür. Yani ['] yerine istemeden '[0]' (ve sonra '[1]') kodlamış olabilirsiniz. – aroth

+0

Ben olabilirim. PHP'de sanırım 'array_keys' komutunu açamazsın. JQuery'in onları nasıl eklemediğinden emin değilsiniz :( – Tessmore

cevap

18

%5B0%5D[0] kodlanmış versiyonu, %5B1%5D[1] kodlanmış versiyonu, vb olup

%5B is [ 
%5D is ] 

değişmez bir karakter, bir% HH kodlama parçası değildir arasında sayısı.

+0

Kesinlikle [nokta açık]! –

İlgili konular