0

ピン フィードを自分のサイトに取り込もうとしています。動作していますが、意図したとおりに動作していないため、表示内容を修正する必要があります。

必要なのは、日付の記述ビットから特定のデータを抽出することです。

これは、XML フィードを取得するために使用するコードです。

<?php
$ch = curl_init("http://pinterest.com/1234/feed.rss");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HEADER, 0);
$data = curl_exec($ch);
curl_close($ch);
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);

if(isset($doc->channel))
{
    parseRSS($doc);
}
function parseRSS($xml)
{
    $cnt = 9;
    for($i=0; $i<$cnt; $i++)
    {
    $url    = $xml->channel->item[$i]->link;
    $img    = $xml->channel->item[$i]->description;
    $title  = $xml->channel->item[$i]->title;
    echo '<p><a href="'.$url.'" title="'.$title.'">'.$img.'</a></p>';
    }
}
?>

問題は、説明が以下のようになり、私が欲しいのはsrcそこからの値だけです:

<description>&lt;p&gt;&lt;a href="/pin/1785432765530/"&gt;&lt;img src="http://media-cache-ec1.pinterest.com/upload/27099622222548513383_qJV62266Pf_b.jpg"&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;What it takes to Google’s.&lt;/p&gt;</description>

説明から抜け出して、または別の変数src="http://media-cache-ec1.pinterest.com/upload/270996666522513383_qJV6666Pf_b.jpg"に保存する方法はありますか?$img

4

3 に答える 3

1

いくつかの RegExp が役に立ちます ( PHP ManualWikipedia )

例えば。:.*(src=".*[^"]").*

于 2012-06-22T16:11:53.360 に答える
0

私が使ったすべてに感謝します

    $cnt = 9;
    for($i=0; $i<$cnt; $i++)
    {
    $url    = $xml->channel->item[$i]->link;
    $img    = $xml->channel->item[$i]->description;
    $title  = $xml->channel->item[$i]->title;
    $pattern = '/src="([^"]*)"/';
    preg_match($pattern, $img, $matches);
    $src = $matches[0];
    unset($matches);
    //echo $src;
    echo '<p><a href="'.$url.'" title="'.$title.'"><img '.$src.'</img></a></p>';
    }
}
?>

ヒントをありがとう

于 2012-06-25T09:47:29.157 に答える