0

次の投稿xml内の最初のimgのsrcを選択しようとしています。

<post>
<regular-title>Testing 1</regular-title>
<regular-body>
<p>This is a test for projects on the website</p> 
<p><img src="http://media.tumblr.com/tumblr_m3t0r3saXy1rocfxw.jpg"/></p> 
<p><img src="http://media.tumblr.com/tumblr_m3t0s6bPyw1rocfxw.jpg"/></p>
</regular-body>
</post>

phpを使用してタイトルと投稿テキストを選択できますが、imgまたはそのsrcを選択できませんでした。

$title = $xml->posts->post->{'regular-title'};
$img = $xml->posts->post->{'regular-body'}->??????;
$post = $xml->posts->post->{'regular-body'};

imgを選択するために正しい方法を使用していますか、それとも別の方法がありますか?

4

2 に答える 2

0
$output = preg_match_all('/<img.+src=[\'"]([^\'"]+)[\'"].*>/i', $xml->posts->post->{'regular-body'}, $matches);
$first_img = $matches[1][0];
if(!empty($first_img))
  return $first_img;
return 'no image url.png';

これはあなたにとってうまくいくはずです

于 2012-05-10T14:18:03.383 に答える
0

DOMクラスを使用して簡単に取得できます。

$xml = '<post>
    <regular-title>Testing 1</regular-title>
    <regular-body>
    <p>This is a test for projects on the website</p> 
    <p><img src="http://media.tumblr.com/tumblr_m3t0r3saXy1rocfxw.jpg"/></p> 
    <p><img src="http://media.tumblr.com/tumblr_m3t0s6bPyw1rocfxw.jpg"/></p>
    </regular-body>
    </post>';
$dom = new DOMDocument();
$dom->loadXML($xml);

$images = $dom->getElementsByTagName("img");
$firstImage = $images->item(0); //get the first img tag
$src = $firstImage->getAttribute("src");
于 2012-05-10T14:32:50.547 に答える