リクエストURLで、クエリ文字列?dir=Documents%20partag%C3%A9s
または?dir=Documents%20partag%E9s
を取得できます。私は最初のものがUTF-8で、2番目がASCIIだと思います。URLクエリ文字列エンコーディングを検出する
本当の文字列は次のとおりです。Documents partagés
だから、私はと私は何をしたい(UTF-8に)PHPスクリプトを持って、クエリ文字列は、ASCIIまたはUTF-8があるかどうかを検出することであり、もしASCIIで、UTF-8に変換します。
私はmb_
関数で試しましたが、クエリ文字列は常にASCIIとして、クエリ文字列のurldecodeバージョンはUTF-8として検出されます。
どうすればこの問題を解決できますか? Wikipediaにも同様の機能があります。-%E9
〜%C3%A9
をエンコードします。
たぶん、php.netのこのコメントはあなたを助けることができます:http ://at2.php.net/manual/en/function.mb-check-encoding.php#95289 – thedom