php的内部方法编码方式,PHP实现多种字符编码解码方式的方法

在一些项目和接口中,尤其是大众化的接口中,譬如银联支付宝等,因为小企业的网站的编码方式是不同的,比较常见的有utf-8,gbk,gb2312等。为了适应大众化广泛化,php有mb_convert_encoding 可以对编码进行转换。兼容大多数的编码。此处从支付宝的接口示例中,摘取转码和编码的两个通用的方法,供大家学习和参考。直接上代码。

/**

* 实现多种字符编码方式

* @param $input 需要编码的字符串

* @param $_output_charset 输出的编码格式

* @param $_input_charset 输入的编码格式

* return 编码后的字符串

*/

function charsetEncode($input,$_output_charset ,$_input_charset) {

$output = "";

if(!isset($_output_charset) )$_output_charset = $_input_charset;

if($_input_charset == $_output_charset || $input ==null ) {

$output = $input;

} elseif (function_exists("mb_convert_encoding")) {

$output = mb_convert_encoding($input,$_output_charset,$_input_charset);

} elseif(function_exists("iconv")) {

$output = iconv($_input_charset,$_output_charset,$input);

} else die("sorry, you have no libs support for charset change.");

return $output;

}

/**

* 实现多种字符解码方式

* @param $input 需要解码的字符串

* @param $_output_charset 输出的解码格式

* @param $_input_charset 输入的解码格式

* return 解码后的字符串

*/

function charsetDecode($input,$_input_charset ,$_output_charset) {

$output = "";

if(!isset($_input_charset) )$_input_charset = $_input_charset ;

if($_input_charset == $_output_charset || $input ==null ) {

$output = $input;

} elseif (function_exists("mb_convert_encoding")) {

$output = mb_convert_encoding($input,$_output_charset,$_input_charset);

} elseif(function_exists("iconv")) {

$output = iconv($_input_charset,$_output_charset,$input);

} else die("sorry, you have no libs support for charset changes.");

return $output;

}

仰望星空,亦不忘脚踏实地。辛勤耕耘,只为精于求精。----《严谨》

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值