【问题标题】:RSS feed conflicting with SVGRSS 提要与 SVG 冲突
【发布时间】:2014-05-06 21:44:46
【问题描述】:

我在导入的 RSS 提要和包含一组包含在列表项中的 SVG 的包含的 HTML 文件之间遇到了问题。 (下面是编辑过的 SVG 摘录的 HTML)其中一个或另一个显示没有问题。将两者包含在一起,image.html 确实显示了第一个 JPG,但不显示 SVG 或后面的 PNG。我认为与 XML(?)有冲突,我希望这是一个明确的解释。

image.html(编辑摘录)>>>

 <li class="layer" data-depth="0.02">
    <svg xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none" viewBox="0 0 1080 1080">
    <g transform="translate(0 .00002)">
    <path fill="#bababa" d="m.06">    
    </g>
    </svg>    
</li>

PHP(摘录)>>>

<ul id="scene" class="scene">
    <li class="layer" data-depth="0.0"><img src="/images/lightStudy_8.jpg"></li>
    <?php include('image.html'); ?>
    <li class="layer" data-depth="0.4"><img src="/images/nologo.png"></li>
    <li class="layer" data-depth="0.6"><img src="/images/nologo_white.png"></li>
</ul>

<div class="wrapper">
    <!-- page content -->
    <?php
    $XMLFILE = "http://something/default?alt=rss";
    $TEMPLATE = "http://something/sample-template.html";
    $MAXITEMS = "5";
    include("rss2html.php");
    ?>
</div>

【问题讨论】:

    标签: php html xml svg rss


    【解决方案1】:

    我仍然没有找到我认为与 XML 相关的导致冲突的问题。 我经常使用 SVG,所以我仍然想知道原因,以便将来避免出现问题。但是,我将完全使用一种方法。不是这方面的专家,我找到了一个我可以处理的解析器并用我自己的替换了 HTTP,N 只是你希望显示的帖子数。

    另外,{$item['DESCRIPTION']} 是从数组中提取该值的方法。不知道提要的标准化程度如何,我只是搜索了 XML 提要(通过浏览器),以查看哪些标签用于我想要显示的信息并遵循语法。

    立即为我工作的来源在下面或以下提供: http://www.stemkoski.com/how-to-easily-parse-a-rss-feed-with-php-4-or-php-5/

    <?php
    
    //FUNCTION TO PARSE RSS IN PHP 4 OR PHP 4
    function parseRSS($url) { 
    
    //PARSE RSS FEED
        $feedeed = implode('', file($url));
        $parser = xml_parser_create();
        xml_parse_into_struct($parser, $feedeed, $valueals, $index);
        xml_parser_free($parser);
    
    //CONSTRUCT ARRAY
        foreach($valueals as $keyey => $valueal){
            if($valueal['type'] != 'cdata') {
                $item[$keyey] = $valueal;
            }
        }
    
        $i = 0;
    
        foreach($item as $key => $value){
    
            if($value['type'] == 'open') {
    
                $i++;
                $itemame[$i] = $value['tag'];
    
            } elseif($value['type'] == 'close') {
    
                $feed = $values[$i];
                $item = $itemame[$i];
                $i--;
    
                if(count($values[$i])>1){
                    $values[$i][$item][] = $feed;
                } else {
                    $values[$i][$item] = $feed;
                }
    
            } else {
                $values[$i][$value['tag']] = $value['value'];  
            }
        }
    
    //RETURN ARRAY VALUES
        return $values[0];
    } 
    
    
    /********************************************************************************************       
    **********************
    SAMPLE USAGE OF FUNCTION
    ********************************************************************************************
    *********************/
    
    //PARSE THE RSS FEED INTO ARRAY
    $xml = parseRSS("http://SomeBlog.com/feeds/posts/default?alt=rss");
    
    //SAMPLE USAGE OF 
    $n=1;
    foreach($xml['RSS']['CHANNEL']['ITEM'] as $item) {
     if($n<=5) {     
            echo("<article>");  
            echo("<h3 class=\"title\"><a href=\"{$item['LINK']}\" target=\"_blank\">     
    {$item['TITLE']}{$link}</a></h3>");
            $pdate = $item['PUBDATE'];
            echo("<h4>".$pdate."</h4>");
            echo("<div class=\"description\">{$item['DESCRIPTION']}</div>");
            echo("</article>");
        }
        $n++;
    }
    
    ?>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-10-01
      • 1970-01-01
      • 2010-09-08
      • 2014-10-04
      • 1970-01-01
      • 1970-01-01
      • 2011-02-09
      • 1970-01-01
      相关资源
      最近更新 更多