これは、Facebook エンジニアリング ページから取得したサンプル コードです。
<?php
if ($_POST['name']) {
?>
<span>Hello, <?=$_POST['name']?>.</span>
<?php
} else {
?>
<form method="post">
What is your name?<br>
<input type="text" name="name">
<input type="submit">
</form>
<?php
}
上記のコードは、クロス サイト スクリプティングに対して開かれているため、セキュリティで保護されていません。正しい方法は、htmlspecialchars() を介して $_POST['name'] を渡すことです。ただし、彼らはそれが貧弱なプログラミングの実践であると述べました.
htmlspecialchars() を介して常に $_POST 変数を渡すのは非効率的ですか?
安全にする方法が思いつきません。彼らは、私が使いたがらない XHP を導入しています。
参考:https ://www.facebook.com/notes/facebook-engineering/xhp-a-new-way-to-write-php/294003943919