例如,如果我使用$id= $_GET['id'];
然后我使用$id
作为if语句的条件,我是否必须在$id
上使用htmlspecialchars?
e.g。
$id = htmlspecialchars($_GET['id']);
if($id) {
//code
}
是否需要htmlspecialchars,即使没有输出html?
答案 0 :(得分:3)
没有。如果要将数据输出到HTML上下文中,则只需要HTML转义数据,并且数据可能包含HTML中具有特殊含义的字符(例如<
,{{1} },>
)并且您不希望这些字符破坏您的HTML结构。
另见The Great Escapism (Or: What You Need To Know To Work With Text Within Text)。