PHP 将 Class 和 id 写成单引号而不是双引号。为什么?

标签 php html joomla

我最近在 Joomla 项目中遇到了很多错误,并且发现了类似(在类代码中)...

return "<span class='...

echo "<h3 id='...

代替

return "<span class=\"...
echo "<h3 id=\"...

这多次包含引号中的变量,但它仍然通过单引号找到我的浏览器。在进行和更改这些内容之前,我想看看其他人是怎么说的。我的项目在 http://dev.thediabetesnetwork.com .

我查了一下,发现了很多相互矛盾的信息,所以我想我会重新讨论最新的 PHP/浏览器配置,看看我是否忽略了其他细节。

最佳答案

如果字符串中的所有双引号都没有用 \ 进行转义,那么阅读起来会容易得多。

如果需要在字符串表达式中输出变量,必须使用双引号。如果您在双引号内输出 HTML,您可以使用 '\" 来包含 HTML 属性。首选第一个,因为它会产生更清晰的 PHP 代码。

如果您不想让您的 HTML 使用单引号,那么您可以转义所有引号,使用 heredoc syntax ,或将您的变量连接到字符串中,例如:

echo '<div class="test">' . $var . '</div>';

关于PHP 将 Class 和 id 写成单引号而不是双引号。为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11833256/

相关文章:

php - 如何检查 Smarty 中是否存在变量?

html - Webpack:加载 *.eot 字体时出现 "OTS parsing error: invalid version tag"

php - 使用 PayPal API 促进用户对用户的交易

PHP/MySQL - 根据开始日期+ INSERT 确定一系列日期

javascript - jQuery <h1> 来自 var 的文本不换行

javascript - 在文本框中粘贴某些文本时是否检查数字(没有设置超时)

joomla - 升级到 Xampp 1.8.1 后,无法查看我的网站

css - 将 css 添加到 joomla 插件

joomla - 在哪里放置 tinyMCE.init

php - 在 MYSQL 中重现 PHP hash_hmac 功能