0

私はrssxmlフィードデータを読み取ってデータベースに画像のURLと画像とともに保存し、サイトのURLに表示しています。このために関数を作成してうまく機能させています。しかし、RSSデータで、同じ画像が異なる名前と異なるサイズで見つかりました。お気に入り

      <item>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_mn.jpg" width="320" height="240" credit="Danny Moloshok/AP Photo"/>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_mc.jpg" width="100" height="75" credit="Danny Moloshok/AP Photo"/>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_mv.jpg" width="264" height="198" credit="Danny Moloshok/AP Photo"/>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_wl.jpg" width="200" height="112" credit="Danny Moloshok/AP Photo"/>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_main.jpg" width="413" height="310" credit="Danny Moloshok/AP Photo"/>
        <media:thumbnail url="http://a.abcnews.com/images/Entertainment/ap_tiger_woods_jp_111205_wmain.jpg" width="640" height="360" credit="Danny Moloshok/AP Photo"/>
       <media:keywords>1</media:keywords>
        <title><![CDATA[Change of Plans: Romney Revamps as Gingrich Closes]]></title>
        <link><![CDATA[http://feeds.abcnews.com/click.phdo?i=b21d3190f683c1e9dd83653255d5e446]]></link>
     </item>
        <item>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_mn.jpg" width="320" height="240" credit="ABC News"/>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_mc.jpg" width="100" height="75" credit="ABC News"/>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_mv.jpg" width="264" height="198" credit="ABC News"/>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_wl.jpg" width="200" height="112" credit="ABC News"/>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_main.jpg" width="413" height="310" credit="ABC News"/>
        <media:thumbnail url="http://a.abcnews.com/images/International/abc_rq170_unmanned_drone_ll_111205_wmain.jpg" width="640" height="360" credit="ABC News"/>
        <media:keywords>5</media:keywords>
        <title><![CDATA[Iran Missing Drone Was on CIA Mission]]></title>
        <link><![CDATA[http://feeds.abcnews.com/click.phdo?i=42a589abb9eb7a87c2dcaeaaeeb2e383]]></link>

もっと...........

これらはすべて、サイズの異なる1つのアイテムブロック内の同じ画像です。

そして私の機能は画像を撮るためのものでした:

   public  function getNytimes($site_config = array()){
       $xmlContent = self::checkXmlValidator($site_config['rss_link']);
       if($xmlContent === false){
           /*update url if getting any error*/
            mysql_query("UPDATE feed_settings SET feed_settings.status = '0', feed_settings.error_log='Time:".date('Y-m-d H:i:s')." Invalid url or resopnse time too more' WHERE feed_settings.rss_link='".$site_config['id']."'");
             return false;
         }
       $xml1 = new SimpleXMLElement($xmlContent);
       $child = $xml1->getDocNamespaces();
       $xml1->registerXPathNamespace('media', $child['media']);
       $image_arr = $xml1->xpath('//media:content');
       $xml = @simplexml_load_string($xmlContent,'SimpleXMLElement', LIBXML_NOCDATA);
       for($counter = 0; $counter < sizeof($image_arr); $counter++){
           $image = null;
            $image =  @$image_arr[$counter]->attributes()->url;
       $sql_query = "INSERT INTO news_feeds SET `image_url` = '".$image."',

しかし今回はデータベースに6つの同じ画像を保存します。では、1つのブロックから単一の画像を取得するにはどうすればよいですか?

4

2 に答える 2

0

画像のジオメトリが固定されている場合は、幅と高さの属性を指定して画像を保存するだけです。

于 2011-12-07T08:56:04.983 に答える
0

保存したい写真によって異なります。

$image =  @$image_arr[0]->attributes()->url;

これにより、画像が_mnendfix とともに保存されます。スクリプトの終わり近くにある for ループを削除します。

于 2011-12-07T09:00:34.540 に答える