现在是这个样的感觉不优雅,有用array_map, array_walk来实现的吗
回复内容: function arraycv($data) { if (is_array($data)) { foreach ($data as $key => $val) { if (!is_array($val)) { $arr[$key] = iconv('utf-8', 'gbk', $val); } else { $arr[$key] = arraycv($val); } } } else { return iconv('utf-8', 'gbk', $data); } return $arr; }
现在是这个样的感觉不优雅,有用array_map, array_walk来实现的吗
试试 array_walk_recursive 。
function arraycv($data) { if (is_array($data)) { foreach ($data as $key => $val) { $arr[$key]=arraycv($val); } } else { return iconv('utf-8', 'gbk', $data); }}
==================================================
function myconv(&$value,$key) { $value=iconv('utf-8', 'gbk',$value);}function arraycv($data) { array_walk($data,myconv);}
function ac($input = array()){ return json_decode(iconv('utf-8', 'gbk//ignore', json_encode($input,json_unescaped_unicode)),true);}
不知道这个行不行。有人用php5.4么。测测。
