PHP循环爆炸()

时间:2013-05-17 07:26:41

标签: php arrays foreach explode

我目前正在使用数据库中的两个字段。这些字段包含以逗号(,)分隔的单词。

这是我的代码

    $tags = explode(",",$tags);
$tagsdesc = explode(",",$tagsdesc);

foreach($tags as &$key) 
{
    foreach($tagsdesc as &$value) 
    {
        echo "<img src='images/".$key."' width='20' height='20' title='".$value."'></img> ";
    }
}

将两个值$ tag和$ tagsdesc输入函数。我很难吐出显示$ key的html而不是图像标题的$ value,谢谢。

1 个答案:

答案 0 :(得分:2)

如果值应该在一起,你需要这个:

foreach($tags as $key => $tag) {
    $desc = $tagsdesc[$key];
    echo sprintf('<img src="images/%s" width="20" height="20" title="%s" />',
        urlencode($tag),
        htmlspecialchars($desc, ENT_QUOTES, 'UTF-8')
    );
}

另外,了解HTML转义;如果没有这样做可以导致XSS。