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来实现的吗
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
试试 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么。测测。