有人可以解释为什么这小段代码不起作用吗?
这是给出的错误:
解析错误:语法错误,/ var / www / g35003 /
中的意外'='
$img_attributes= style='max-height: 100px; max-width: 100px' . 'alt="'.$product['product_name'].'"';
答案 0 :(得分:4)
如果这是PHP并且你试图将一个字符串分配给一个变量,那么字符串应该有引号。
此处,此特定代码部分导致错误:
$img_attributes= style='max
在第一个=符号后应该有某种引用。
像这样的东西应该更好,例如:
$img_attributes= 'style="max-height: 100px; max-width: 100px"'
. ' alt="' . $product['product_name'] . '"';
作为旁注:对于$product['product_name']
部分,也许某种逃避可能会有所帮助?确保它不包含任何会破坏您的标记的HTML。
例如,见htmlspecialchars
。
例如,如果您的产品名称以这种方式初始化:
$product['product_name'] = 'my mega "product"';
然后,使用我之前发布的代码部分将获得此输出:
style="max-height: 100px; max-width: 100px" alt="my mega "product""
哪个不太好......
使用htmlspecialchars
,如下所示:
$img_attributes= 'style="max-height: 100px; max-width: 100px"'
. ' alt="' . htmlspecialchars($product['product_name']) . '"';
输出将变为:
style="max-height: 100px; max-width: 100px" alt="my mega "product""
至少,它是有效HTML的一部分: - )
答案 1 :(得分:2)
你搞乱报价,可能修复:
$img_attributes= "style='max-height: 100px; max-width: 100px'" . 'alt="'.$product['product_name'].'"';