【问题标题】:RSS feed and size of imagesRSS 提要和图像大小
【发布时间】:2014-07-21 14:07:17
【问题描述】:

我的网站上有这个 RSS 提要,但图片太大了。有什么办法可以让它们变小。图片带有描述元素。

<?php
    $rss = new DOMDocument();
    $rss->load('http://www.keilir.net/is/feed/');
    $feed = array();
    foreach ($rss->getElementsByTagName('item') as $node) {
     $item = array (
      'title' => $node->getElementsByTagName('title')->item(0)->nodeValue,
      'desc' => $node->getElementsByTagName('description')->item(0)->nodeValue,
      'link' => $node->getElementsByTagName('link')->item(0)->nodeValue,
      'date' => $node->getElementsByTagName('pubDate')->item(0)->nodeValue,
       );
     array_push($feed, $item);
     }
$limit = 2;
for($x=0;$x<$limit;$x++) {
    $title = str_replace(' & ', ' &amp; ', $feed[$x]['title']);
    $link = $feed[$x]['link'];
    $description = $feed[$x]['desc'];
    $date = date('l F d, Y', strtotime($feed[$x]['date']));
    echo '<p><strong><a href="'.$link.'" title="'.$title.'">'.$title.'</a></strong><br />';
    echo '<small><em>Posted on '.$date.'</em></small></p>';
    echo '<p>'.$description.'</p>';
    }
?>

【问题讨论】:

    标签: php rss


    【解决方案1】:

    如果您想自己更改图像文件,您可以使用任意数量的 PHP 图像库,这些库最终往往依赖于 iMagick 或 GD PHP 函数。要了解更多信息,您可以从这里开始:

    http://php.net/manual/en/class.imagick.php

    http://php.net/manual/en/imagick.examples-1.php

    或者尝试搜索 PHP 图像库。如果您只是更喜欢使用现有的图像文件,但在浏览器中以不同的大小呈现它们,您可以简单地使用 HTML 属性(或 CSS)指定高度和宽度约束:

     <img src="/path/to/image" height="200" width="200" />
    
     <img src="/path/to/image" style="height: 200px; width: 200px;" />
    

    这种方法有很多注意事项,即您将要求用户下载比他们看到的更大的图像,这意味着页面加载速度会比需要的慢。此外,如果您手动设置图像的高度/宽度,则需要小心保持图像的纵横比,否则在渲染时您会看到它拉伸或倾斜。

    我强烈建议您在服务器端使用 PHP 来调整图像本身的大小,然后再在页面上使用它们。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-07
      • 2010-10-03
      • 1970-01-01
      • 1970-01-01
      • 2015-07-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多