php将字符串转换为多维数组

时间:2013-10-30 16:47:13

标签: php arrays multidimensional-array

我在这里看到很多关于将多维数组转换为字符串的帖子,但不是相反,所以我有一个问题要问。我有以下数据字符串,这些数据是通过帖子从JQuery数组中检索的:

["enquiry@gardengamesltd.co.uk, sales@gardengamesltd.co.uk","http://www.gardengamesltd.co.uk/acatalog/contactus.html"],["enquiry@gardengames.com","http://www.gardengames.com/contact/"],["info@gardengamesandleisure.com","http://www.gardengamesandleisure.com/ContactUs.aspx"],["playtime@kentgardengameshire.com","http://www.kentgardengameshire.com/contact-us.html"],["sales@gardengamesuk.com","http://www.gardengamesuk.com/contact.php"],["team@gardenknightgames.com","http://www.gardenknightgames.com/contact/"],["ajax-loader@2x.gif","http://www.just-garden-games.co.uk/"]

我想要做的是将其转换为一个看起来像这样的数组:

Array
(
    [0] => Array
        (
            [Email] => enquiry@gardengamesltd.co.uk, sales@gardengamesltd.co.uk
            [FB] => http://www.gardengamesltd.co.uk/acatalog/contactus.html
        )

    [1] => Array
        (
            [Email] => enquiry@gardengames.com
            [FB] => http://www.gardengames.com/contact/
        )
    [2] => Array
        (
            [Email] => info@aaeventhire.com
            [FB] => http://www.aaeventhire.com/pricing/garden-games
        )

)

我意识到我可以使用$array = explode('","', $harvest_data);但是这只会给我一个单级数组,理想情况下我想在内部数组中保留电子邮件,fb。

有没有人对如何做到这一点有任何想法?

感谢。

1 个答案:

答案 0 :(得分:2)

实际上,您的字符串无效JSON。将它包装在一对[]中将适用于这种情况,因此如果输入始终具有此表单,则可以使用:

$json_string = '[' . $your_string . ']';
$your_array = json_decode($json_string);

但是,最好确保您的前端/ javascript开始使用有效的JSON。

Working example

相关问题