2

私は とを実験してfilter_inputおりfilter_var、現在 で URL をサニタイズしようとしていますFILTER_SANITIZE_URL

テスト プログラムは、URL で構成される GET 変数から入力を取得します (例: foo.com/bar.php?a=http://www.domain.se)。スウェーデンのドメイン名を使用しない限り、問題なく動作します。例: ( ) は、明らかに同じではないfoo.com/bar.php?a=http://www.äta.sea = にサニタイズされます。http://www.ta.se

4

1 に答える 1

2

特殊文字を含むドメインは、技術的に非 ASCII 文字 (あなたの場合の ä など) では転送されず、punycode でエンコードされます。呼び出しプログラムは、それに応じて URL をエンコードする必要があります。

参照:
http://en.wikipedia.org/wiki/Internationalized_domain_name
http://en.wikipedia.org/wiki/Punycode

例:
http://www.äta.sehttp://www.xn--ta-uia.seです。

于 2010-03-06T19:20:34.507 に答える