1. urlencode と rawurlencode の違い
<?php test('https://tieba.baidu.com/f?kw=2&fr=wwwt'); test(':/?= &#'); test('测试'); function test($s) { echo "<b>urlencode('$s')</b> = [<b>"; var_dump(urlencode($s)); echo "</b>]<br/>"; echo "<b>rawurlencode('$s')</b> = [<b>"; var_dump(rawurlencode($s)); echo "</b>]<br/>"; } //运行结果 urlencode('https://tieba.baidu.com/f?kw=2&fr=wwwt') = [ D:\software\wamp\www\linux\webApi\test.php:9:string 'https%3A%2F%2Ftieba.baidu.com%2Ff%3Fkw%3D2%26fr%3Dwwwt' (length=54) ] rawurlencode('https://tieba.baidu.com/f?kw=2&fr=wwwt') = [ D:\software\wamp\www\linux\webApi\test.php:12:string 'https%3A%2F%2Ftieba.baidu.com%2Ff%3Fkw%3D2%26fr%3Dwwwt' (length=54) ] urlencode(':/?= &#') = [ D:\software\wamp\www\linux\webApi\test.php:9:string '%3A%2F%3F%3D+%26%23' (length=19) ] rawurlencode(':/?= &#') = [ D:\software\wamp\www\linux\webApi\test.php:12:string '%3A%2F%3F%3D%20%26%23' (length=21) ] urlencode('测试') = [ D:\software\wamp\www\linux\webApi\test.php:9:string '%E6%B5%8B%E8%AF%95' (length=18) ] rawurlencode('测试') = [ D:\software\wamp\www\linux\webApi\test.php:12:string '%E6%B5%8B%E8%AF%95' (length=18) ]
上記の実行結果からわかるように、文字、数字、特殊文字を処理する場合、urlencode と rawurlencode の 2 つのメソッドの結果は同じです。記号と中国語。唯一の違いはスペースの処理です。urlencode は " " として処理され、rawurlencode は " " として処理されます。
2. 関数 Strip_tags: HTML タグと PHP タグを削除します
注: この関数は、文字列に含まれる HTML および PHP タグ文字列を削除できます。文字列の HTML タグと PHP タグがもともと間違っている場合 (たとえば、大なり記号が欠落している場合)、エラーも返されます。この関数は fgetss() と同じ機能を持ちます。 fgetss はファイルからファイルを読み取り、html タグと php タグを削除します。
<?php echo strip_tags("Hello <b>world!</b>");
実行結果
Hello world!
3. 関数 htmlspecialchars、特殊文字を HTML 形式に変換
htmlspecialchars() 関数は事前定義された文字を変換します HTML エンティティに変換します。
定義済みの文字は次のとおりです。
& (アンパサンド) は &
になります。 " (二重引用符) は "
' (一重引用符) になります。 '
< (より小さい) は < になります。 ;
> (より大きい) は>
##
<?php echo htmlspecialchars("This is some <b>bold</b> text.&");
This is some <b>bold</b> text.&
<?php echo htmlentities("<? W3S?h????>");
<? W3S?h????>
単一引用符 (')
二重引用符 (")
バックスラッシュ (\)
NULL
<?php echo addslashes('Shanghai is the "biggest" city in China.');
Shanghai is the \"biggest\" city in China.
<?php echo stripslashes("Who\'s Bill Gates?");
Who's Bill Gates?
QQ メールボックスを使用した電子メール送信の PHP 実装
以上がphp Webリクエストのセキュリティ処理の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。