/** * 转换字符串或字符串数组的编码 * 优先采用mb_convert_encoding函数,如果mb_convert_encoding函数不存在,采用iconv函数 * @param mixed $param * @param string $inCharset * @param string $outCharset * @return mixed * @throws ErrorException 如果mb_convert_encoding或者iconv函数不存在,抛出异常 */ public function convert($param, $inCharset = 'GBK', $outCharset = null) { if (function_exists('mb_convert_encoding')) { return Encoder::mb_convert_encoding($param, $inCharset, $outCharset); } if (function_exists('iconv')) { return Encoder::iconv($param, $inCharset, $outCharset); } throw new ErrorException(sprintf('Encoder convert encoding failed, function "mb_convert_encoding" or "iconv" not exists')); }