-1

我想使用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

我显然连接错误 - 我该如何解决这个错误?

4

3 回答 3

2

您的<img>标签已损坏:

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

您正在使用heredoc语法,您不会在heredoc. 尝试以下方式:

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

干杯

于 2012-11-14T17:28:58.183 回答
1

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

printf('<img src="images/%s/%s"/>', $category['name'], $image['name']);
于 2012-11-14T18:11:49.507 回答
-1

您的 echo 语句中混合了 ' 和 "。

只需像这样制作回声:

echo '<img src="images/' . $category['name'] . '/' . $image['name'].'"/>'
于 2012-11-14T17:29:06.223 回答