CodeIgniterでURL GETで日本語を渡したいときがあります。
例: http://localhost/ci/customer/あいうえお
これはCodeIgniter標準ルーターで、functionの引数として扱うと文字として扱われません。
URLデコードをする
たとえば
http://localhost/ci/customer/あいうえお
を受け取りたい場合はPHPのurldecodeを使用します。
CodeIgniterで以下のような関数を定義してあるとします。
function aa($str = '')
上記の場合 $strにはURLエンコードされた「あいうえお」(実際には %82%A0%82%A2%82%A4%82%A6%82%A8)が入っています。
使用する場合は
$str = urldecode($str);
としてから使うと正常な日本語として使用できます。