PHP里面的IMG SRC里面有更多的PHP如何

时间:2011-05-01 01:42:54

标签: php mysql

我总是在混合语言时遇到问题,最近我开始使用MYSQL。在这种情况下,我有这个代码:

<?php
 $data = mysql_query("SELECT * FROM Badges") 
 or die(mysql_error()); 
 while($info = mysql_fetch_array( $data )) 
 { 
 Print "http://www.google.com/s2/favicons?domain=".$info['Website'] . ""; 
 } 
?>

我需要它来打印图像而不是它打印的链接。

http://www.google.com/s2/favicons?domain=“。$ info ['网站']。”成为图片的网址

怎么写?非常感谢

2 个答案:

答案 0 :(得分:3)

print '<img src="http://www.google.com/s2/favicons?domain=' . $info['Website'] . '" alt="" />'; 

其他一些提示......

  • mysql_*是旧功能,现在使用PDO要好得多。
  • or die()也过时了 - 您是否考虑过例外?
  • echoprint更常用,您应该使用手册中陈述的情况,例如print代替Print
  • 您应该了解关注点的分离,例如您应该在不同的层上进行查询和数据管理,将相关数据传递给视图,该视图仅包含HTML和用于生成它的一些PHP构造。

答案 1 :(得分:0)

我通常会发现更容易尝试以抽象的方式表达不同情况的不同之处。在你的情况下,它是网站(在?domain=之后)不同,其余的都是相同的。因此,图片的网址可以抽象地表示为http://www.google.com/s2/favicons?domain={website},其中{website}是未来替换的占位符。

然后使用函数

执行替换
$result = str_replace($what_to_replace, $what_to_replace_with, $original_string);

这样做的好处是你永远不会在一行上混合语言,这使代码更容易开发:)只需看看这段代码很容易阅读:

<?php
    $img = '<img src="http://www.google.com/s2/favicons?domain={website}" />';
    $data = mysql_query("SELECT * FROM Badges") 
    or die(mysql_error()); 

    while($info = mysql_fetch_array( $data )) 
    {
        $concrete_img = str_replace("{website}", $info['Website'], $img);
        print $concrete_img; 
    }
?>