不要混合决定(if ...
)与输出。呼应前做好一切准备:
foreach ($dag as $taak) {
// Don't add color by default
$style = '';
// Special color for special entries
if ($_SESSION['user_id'] == $taak['username']) {
$style = ' style="color: red;"';
}
// Make sure HTML special characters in $taak['username'] do not break the HTML
$username = htmlspecialchars($taak['username']);
// Display
echo("<li{$style}>{$taak['taak_naam']} - {$username}</li>");
}
通过围绕string in double quotes ("
),PHP recognizes variable names里面并取代他们与他们的价值观。
的curly braces ({
and }
) around the array values告诉PHP变量为$taak['taak_naam']
,否则只找到$taak
它输出Array['taak_naam']
(这是不是我们想要的)。
如果您用于创建HTML内容的值可能包含HTML中特殊的字符,那么您必须使用其正确的HTML定义对这些字符进行编码。 PHP函数htmlspecialchars()
知道如何去做。
它编码<
,>
,&
和"
(这些都是HTML断路器,如果他们不正确编码)。如果您需要将HTML中定义的所有符号都编码为“字符实体”,则可以使用PHP函数htmlentities()
代替。
为什么我可以知道downvote – JYoThI
在样式属性之前,您仍然缺少一个空格。 – Hienz
tanqq点@Hienz – JYoThI