PHP değişkenleri içine HTTP verileri Ayrıştırma

3 Cevap php

I şeklindeki kodlanmış değişkenlerin oldukça büyük bir sayı vardır:

 foo=bar&spam[eggs]=delicious&...

Bu tek bir dize (örneğin, $ data = "foo = bar & Spam [yumurta] = lezzetli ve ...") tüm vardır. Değişkenler keyfi derine yuvalanmış - dört veya beş seviyeleri kolayca derin ("Spam [yumurta] [kanlı] [viking] loud =").

Bu bir çok-boyutlu bir PHP dizisini almak için kolay ve güvenilir bir yol var mı? Ben benim kullanıma maruz eğer ben bilmiyorum ama, PHP bunu yapmak için bir ayrıştırıcı olduğunu varsayıyorum. İdeal olarak, ben gibi bir şey yapabilirsiniz:

// given $data == "foo=bar&spam[eggs]=delicious"
$arr = some_magical_function( $data );
/* arr = Array
    (
        [foo] => bar
        [spam] => Array
            (
                [eggs] => delicious
            )
    )
*/