【问题标题】:$img_attributes style question$img_attributes 风格问题
【发布时间】:2009-12-24 16:40:42
【问题描述】:

谁能解释一下为什么一小段代码不起作用?

这是给出的错误:

解析错误:语法错误,/var/www/g35003/ 中出现意外的“=”

$img_attributes= style='max-height: 100px; max-width: 100px' . 'alt="'.$product['product_name'].'"';

【问题讨论】:

  • 我没有在您的问题中看到对 javascript 调整大小的任何引用,因此我删除了这些标签并添加了 PHP 标签。标记是 SO 的一个重要方面,因此请尝试并确保选择与您的问题相关的标记,以便它们能够到达正确的专家。

标签: php syntax syntax-error


【解决方案1】:

如果这是 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 表示正确使用 htmlspecialchars(遗憾的是太罕见了)。我不确定alt 是否是产品名称的最佳位置。或许title 更合适?
  • 这对 SEO 来说会更好,对吧? @Pascal,非常感谢,很好的解释。
  • @Chris : 不客气 :-) ;; @bobince:好吧,也许(除了 alt 是必需的,而 title 不是 - 所以,如果你只有一个信息,为什么不把它放在 alt 中?但这是另一个问题^^)
【解决方案2】:

你把引号弄乱了,可能的解决方法:

$img_attributes= "style='max-height: 100px; max-width: 100px'" . 'alt="'.$product['product_name'].'"';

【讨论】:

    猜你喜欢
    • 2017-07-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    相关资源
    最近更新 更多