0

以下の XML コードから URL 値を取得しようとしています。カテゴリ パラメータを通過するのに問題があります。

<ImageSets>
    <ImageSet Category="primary">
        <SwatchImage>
            <URL>www.url.jpg</URL>
        </SwatchImage>
    </ImageSet>
</ImageSets>

検索しましたが、同様の質問は見つかりませんでした。それらはすべてパラメータータグで終わります。それらは別のノードレベルにはなりません。このコードを試してみましたが、あまり直感的ではないエラー メッセージが表示されます。

ImageSets->ImageSet->attributes()->Category['primary']->SwatchImage->URL

どんな助けでも大歓迎です。前もって感謝します!

4

3 に答える 3

1

あなたの質問が正しいかどうかわかりませんが、次のようにします。

$xml=simplexml_load_file("file.xml");
echo $xml->ImageSet[0]->SwatchImage->URL;

それはそれを修正しますか?コードを編集できるように、さらにデータを提供してください。しかし、私のために働きます。

于 2013-07-07T13:19:45.760 に答える
0

あなたの要件が which has を取得することURLImageSetある場合、次のCategory="primary"ように取得できます。

$xml = simplexml_load_string("<?xml version='1.0' ?>
    <ImageSets>
        <ImageSet Category='primary'>
            <SwatchImage>
                <URL>www.url.jpg</URL>
            </SwatchImage>
        </ImageSet>
    </ImageSets>
    ");

$primary_url = '';
foreach ($xml->ImageSet as $set) {
    if ($set->attributes()->Category == 'primary') {
        $primary_url = $set->SwatchImage->URL;
        break;
    }
}
echo $primary_url;
于 2013-07-07T13:47:00.320 に答える