语法错误,意外 T_STRING,应为“,”或“;”

syntax error, unexpected T_STRING, expecting ',' or ';'

我收到此错误消息:

syntax error, unexpected T_STRING, expecting ',' or ';' 

对于此代码:

<?php
    if(isset($mission['Mission']['cadeau'])){ echo

    '<img class="img-responsive" src="<?php echo $this->Html->url("/img/cadeaux/petitscadeaux/".$mission['Missionnature']['name'].".png"); ?>">';  
    }
?>

我用 ' 替换了 " 但它不起作用。我也尝试添加 \ 但我总是收到相同的消息。有人知道如何解决它吗?非常感谢!!!!

正如错误提示的那样,您的代码中有一个未闭合的字符串。当您在同一个文件中组合 HTML 和 PHP 时,这很容易出错。为了提高可读性,您应该将 HTML 移动到一个单独的模板(因为您在问题中标记了#cakephp,框架中内置了一个模板系统)。如果你坚持要在PHP文件中保留HTML,可以使用printf()docs)来提高代码的可读性。

<?php
    if (isset($mission['Mission']['cadeau'])) {
        printf('<img class="img-responsive" src="%s" />', $this->Html->url("/img/cadeaux/petitscadeaux/".$mission['Missionnature']['name'].".png"));  
    }
?>