连接img src字符串

时间:2012-11-14 17:25:53

标签: php concatenation echo image

我想使用img标记显示数据库中的图像。这是我的代码:

if(  !empty( $cat_id ) ) {
    $cats = getImagesByCategory( $cat_id );
    foreach( $cats as $image ) {
        $id = $image['id'];

        echo <<<IMAGE
        <img src="images/'.$category['name']. '/' .$image['name'].'" />
IMAGE;

我在img标签上收到错误:Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING

我显然连接错误 - 如何解决此错误?

3 个答案:

答案 0 :(得分:2)

您的<img>标记已损坏:

<img src="images/'.$category['name']. '/' .$image['name'].'" />
                ^^^                ^^^   ^^^            ^^^

您使用heredoc语法,不在heredoc中进行字符串连接。尝试以下方面:

<img src="images/$category[name]/$image[name]" />

干杯

答案 1 :(得分:1)

从长远来看,学习使用printf()系列函数对你非常有用。

printf('<img src="images/%s/%s"/>', $category['name'], $image['name']);

答案 2 :(得分:-1)

你的echo语句中混合了'和'。

就像这样回声:

echo '<img src="images/' . $category['name'] . '/' . $image['name'].'"/>'