PHP/不等号やアンパサンドなどのエスケープ関数・htmlspecialchars
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
]
開始行:
#navi(../)
* 不等号<>、アンパサンド、ダブルクォーテーション、シング...
HTMLでは、不等号<>やアンパサンドは特別な意味を持ちます。~
通常、以下のようにエスケープしてHTML上に記述します。
- PHP Manual: htmlspecialchars~
http://php.net/manual/ja/function.htmlspecialchars.php
|文字|エスケープ|
|<|&lt;|
|>|&gt;|
|&|&amp;|
このようにエスケープ(変換)してくれる関数がhtmlspecialchar...
#contents
#htmlinsertpcsp(web-top.html,web-sp.html)
* htmlspecialcharsがエスケープする文字 [#kacd1fb6]
htmlspecialchars関数を使うと以下の文字がエスケープ(変換)...
|文字|エスケープ|補足|
|<|&lt;| |
|>|&gt;| |
|&|&amp;| |
|"|&quot;|フラグによりエスケープするしないを制御|
|'|&#039|フラグによりエスケープするしないを制御|
* htmlspecialcharsサンプルソースコード [#zb138ca7]
上記の文字がエスケープされることを確認するサンプルコード...
#ref(htmlspecialchars.php)
<?php
echo 'htmlspecialchars("<") = ' . "\t" . htmlspecialch...
echo 'htmlspecialchars(">") = ' . "\t" . htmlspecialch...
echo 'htmlspecialchars("&") = ' . "\t" . htmlspecialch...
echo "htmlspecialchars('\"') = " . "\t" . htmlspecialc...
echo 'htmlspecialchars("\'") = ' . "\t" . htmlspecialc...
echo "htmlspecialchars('\"', ENT_NOQUOTES) = " . "\t" ...
echo 'htmlspecialchars("\'", ENT_NOQUOTES) = ' . "\t" ...
echo "htmlspecialchars('\"', ENT_QUOTES) = " . "\t" . ...
echo 'htmlspecialchars("\'", ENT_QUOTES) = ' . "\t" . ...
echo "htmlspecialchars('\"', ENT_COMPAT) = " . "\t" . ...
echo 'htmlspecialchars("\'", ENT_COMPAT) = ' . "\t" . ...
?>
* 実行結果 [#c4a3876d]
上記スクリプトの実行結果を以下に記します。~
尚、本スクリプトは端末から実行しました。
$ php htmlspecialchars.php
htmlspecialchars("<") = <
htmlspecialchars(">") = >
htmlspecialchars("&") = &
htmlspecialchars('"') = "
htmlspecialchars("'") = '
htmlspecialchars('"', ENT_NOQUOTES) = "
htmlspecialchars("'", ENT_NOQUOTES) = '
htmlspecialchars('"', ENT_QUOTES) = "
htmlspecialchars("'", ENT_QUOTES) = '
htmlspecialchars('"', ENT_COMPAT) = "
htmlspecialchars("'", ENT_COMPAT) = '
ENT_NOQUOTES, ENT_QUOTES, ENT_COMPATによる動作の違いも出...
#htmlinsertpcsp(web-btm.html,web-sp.html)
終了行:
#navi(../)
* 不等号<>、アンパサンド、ダブルクォーテーション、シング...
HTMLでは、不等号<>やアンパサンドは特別な意味を持ちます。~
通常、以下のようにエスケープしてHTML上に記述します。
- PHP Manual: htmlspecialchars~
http://php.net/manual/ja/function.htmlspecialchars.php
|文字|エスケープ|
|<|&lt;|
|>|&gt;|
|&|&amp;|
このようにエスケープ(変換)してくれる関数がhtmlspecialchar...
#contents
#htmlinsertpcsp(web-top.html,web-sp.html)
* htmlspecialcharsがエスケープする文字 [#kacd1fb6]
htmlspecialchars関数を使うと以下の文字がエスケープ(変換)...
|文字|エスケープ|補足|
|<|&lt;| |
|>|&gt;| |
|&|&amp;| |
|"|&quot;|フラグによりエスケープするしないを制御|
|'|&#039|フラグによりエスケープするしないを制御|
* htmlspecialcharsサンプルソースコード [#zb138ca7]
上記の文字がエスケープされることを確認するサンプルコード...
#ref(htmlspecialchars.php)
<?php
echo 'htmlspecialchars("<") = ' . "\t" . htmlspecialch...
echo 'htmlspecialchars(">") = ' . "\t" . htmlspecialch...
echo 'htmlspecialchars("&") = ' . "\t" . htmlspecialch...
echo "htmlspecialchars('\"') = " . "\t" . htmlspecialc...
echo 'htmlspecialchars("\'") = ' . "\t" . htmlspecialc...
echo "htmlspecialchars('\"', ENT_NOQUOTES) = " . "\t" ...
echo 'htmlspecialchars("\'", ENT_NOQUOTES) = ' . "\t" ...
echo "htmlspecialchars('\"', ENT_QUOTES) = " . "\t" . ...
echo 'htmlspecialchars("\'", ENT_QUOTES) = ' . "\t" . ...
echo "htmlspecialchars('\"', ENT_COMPAT) = " . "\t" . ...
echo 'htmlspecialchars("\'", ENT_COMPAT) = ' . "\t" . ...
?>
* 実行結果 [#c4a3876d]
上記スクリプトの実行結果を以下に記します。~
尚、本スクリプトは端末から実行しました。
$ php htmlspecialchars.php
htmlspecialchars("<") = <
htmlspecialchars(">") = >
htmlspecialchars("&") = &
htmlspecialchars('"') = "
htmlspecialchars("'") = '
htmlspecialchars('"', ENT_NOQUOTES) = "
htmlspecialchars("'", ENT_NOQUOTES) = '
htmlspecialchars('"', ENT_QUOTES) = "
htmlspecialchars("'", ENT_QUOTES) = '
htmlspecialchars('"', ENT_COMPAT) = "
htmlspecialchars("'", ENT_COMPAT) = '
ENT_NOQUOTES, ENT_QUOTES, ENT_COMPATによる動作の違いも出...
#htmlinsertpcsp(web-btm.html,web-sp.html)
ページ名: