<?php
echo $_GET['id'];
?>
对我来说看起来不太安全..展示GET
元素的最佳选择是什么?
所有特殊字符上的preg_replace
或htmlspecialchars
?
答案 0 :(得分:3)
<?php
echo htmlspecialchars($_GET['id']);
?>
答案 1 :(得分:3)
取决于您正在采取的措施 $_GET['id'];
如果您要将其插入数据库,只需使用 Prepared Statements
即可。 [那就够了]
如果您只想在HTML页面上显示它,请使用此代码。
<?php
echo htmlentities($_GET['id']);
?>
答案 2 :(得分:3)
htmlspecialchars()如果是字符串,或者如果它是数字(intval()或(int)等),则转换为适当的类型,例如:
$id = (int)$_GET['id'];
//or
echo (int)$_GET['id'];
答案 3 :(得分:2)
如果是id
,我认为它应该是数字 - 然后echo intval($_GET['id']);
答案 4 :(得分:1)
这应该足够了:
htmlspecialchars($_GET['id'], ENT_QUOTES, "UTF-8");