0
{
    "categories": [
        {
            "necklaces": [
                { title: "Outlet", url: "W_Outlet" },
                { title: "Baby-G", url: "W_BabyG" },
                { title: "Bulova", url: "W_Bulova" },
                { title: "Children_s", url: "W_Childrens" }
            ]
        }
    ]
}

PHPで使用するjson_decodeと空の結果が得られるため、JSON が正しくフォーマットされていないと思われます。

私が必要としているのは、「カテゴリ」という名前のオブジェクトで、そのオブジェクト内にはオブジェクトの配列を持つオブジェクトの配列があります。

つまり、カテゴリ -> [ ネックレス -> { タイトル: 'ゴールド', url: 'ゴールド' } ]

などがありますが、機能していないようです。何か案は?

4

4 に答える 4

1
{
    "categories": [
        {
            "necklaces": [
                {
                    "title": "Outlet",
                    "url": "W_Outlet"
                },
                {
                    "title": "Baby-G",
                    "url": "W_BabyG"
                },
                {
                    "title": "Bulova",
                    "url": "W_Bulova"
                },
                {
                    "title": "Children_s",
                    "url": "W_Childrens"
                }
            ]
        }
    ]
}
于 2013-05-17T16:57:07.650 に答える
1

フィールド名を囲む引用符がありません。

{
    "categories": [
        {
            "necklaces": [
                { "title": "Outlet", "url": "W_Outlet" },
                { "title": "Baby-G", "url": "W_BabyG" },
                { "title": "Bulova", "url": "W_Bulova" },
                { "title": "Children_s", "url": "W_Childrens" }
            ]
        }
    ]
}
于 2013-05-17T16:57:25.430 に答える
1

あなたのtitleandurlを引用する必要があります:

<?php

$json = '{
    "categories": [
        {
            "necklaces": [
                { "title": "Outlet", "url": "W_Outlet" },
                { "title": "Baby-G", "url": "W_BabyG" },
                { "title": "Bulova", "url": "W_Bulova" },
                { "title": "Children_s", "url": "W_Childrens" }
            ]
        }
    ]
}';

$b = json_decode($json);
print_r($b);

?>

結果は次のようになります。

stdClass Object
(
    [categories] => Array
        (
            [0] => stdClass Object
                (
                    [necklaces] => Array
                        (
                            [0] => stdClass Object
                                (
                                    [title] => Outlet
                                    [url] => W_Outlet
                                )

                            [1] => stdClass Object
                                (
                                    [title] => Baby-G
                                    [url] => W_BabyG
                                )

                            [2] => stdClass Object
                                (
                                    [title] => Bulova
                                    [url] => W_Bulova
                                )

                            [3] => stdClass Object
                                (
                                    [title] => Children_s
                                    [url] => W_Childrens
                                )

                        )

                )

        )

)
于 2013-05-17T16:59:37.387 に答える
1

すべてのキーと値は JSON の文字列である必要があります。引用符がありません。

{
    "categories": [
        {
            "necklaces": [
                {
                    "title": "Outlet",
                    "url": "W_Outlet"
                },
                {
                    "title": "Baby-G",
                    "url": "W_BabyG"
                },
                {
                    "title": "Bulova",
                    "url": "W_Bulova"
                },
                {
                    "title": "Children_s",
                    "url": "W_Childrens"
                }
            ]
        }
    ]
}

JSONLintを試して JSON をテストできます。

于 2013-05-17T16:59:39.423 に答える