配列をmb_convert_encodingするプログラム
http://vector.jugem.jp/?eid=56
vectorさんが書かれてたプログラムに一部ミスがあったので修正。
利用させていただきました。ありがとうございます。
しかしでも、すごいなぁ。
でもエンコードをautoで判断するのは危ないと思うので、
これでいいと思います。
/** * mb_convert_encoding()の拡張 * * @param mixed $target arrayかstring * @param string $toEncoding エンコード先 * @param string $fromEncoding エンコード元(default:null) * @return mixed arrayが来たらarrayを、stringが来たらstringを */ function _mbConvertEncodingEx($target, $toEncoding, $fromEncoding = null) { if (is_array($target)) { foreach ($target as $key => $val) { if (is_null($fromEncoding)) { $fromEncoding = mb_detect_encoding($val); } $target[$key] = $this->_mbConvertEncodingEx($val, $toEncoding, $fromEncoding); } } else { if (is_null($fromEncoding)) { $fromEncoding = mb_detect_encoding($target); } $target = mb_convert_encoding($target, $toEncoding, $fromEncoding); } return $target; }