I http_build_query() için boş bir diziye ayarlanmış değer ile bir tuşa geçiyordu nerede bugün bir sorun koştu. Örneğin:
$args = array("foo", "bar", array(), "baz");
$qs = http_build_query($args);
echo $qs; // outputs 0=foo&1=bar&3=baz, I expected 0=foo&1=bar&2=&3=baz
Ben http üzerinde bir iç API için bazı verileri geçiyorum ve ben diğer tarafta tüm argümanları dışarı çekmek gerekir, çünkü bu benim için bir sorun oluşturur.
Peki, ben bu googled ve aşağıdaki hata raporu geldi: http://bugs.php.net/bug.php?id=50407. Bir yönetici dan veciz cevap "ayarı değil boş bu ayar aynıdır. Hiç hata." Olduğunu
Bu bir hata değil neden biri bana açıklayabilir misin? Herkes bir kenara bir tarafında keyfi değerini ayarlama ve diğer boş bir değer olarak bu değeri yorumlama topal kesmek gelen, geçici bir çözüm için herhangi bir fikirleri var mı?
DÜZENLEME
Ben bunun bir hata olduğunu düşünüyorum neden İşte:
$args = array("foo", "bar", array(), "baz");
$qs = http_build_query($args);
parse_str($qs, $query);
echo ($args == $query); // false, I expect it to be true
Ben belki o parse_str() düşünün ve http_build_query() birbirinin tersidir olmak naif beni sanırım.
Ben aşağıda bir cevap olarak benim şimdiki "topal hack" çözüm ilanıyla ediyorum.