PHP——汉字完美转为ASCII码

前言

对接联通的接口,让我学会了不少PHP偏门函数....,主要对方用的py,我这用的PHP,人家一个函数解决了,

我这还要自己写方法,也是比较蛋疼,但是学到东西还是很开心的~

 

代码

 

字符串转为ASCII

/**
 * 字符串转为ASCII
 * 
 * @param string $str 需要转换的字符串
 * 
 * @return string $asc ASCII码
 */
function ascii_encode($str)
{
    $str = mb_convert_encoding($str, 'GBK');
    $asc = '';
    for ($i = 0; $i < strlen($str); $i++) {
        $temp_str = dechex(ord($str[$i]));
        $asc .= $temp_str[0].$temp_str[1];
    }
    return strtoupper($asc);
}

 

ASCII转字符串

/**
 * ASCII转为字符串
 * 
 * @param string $ascii ascii
 * 
 * @return string $str 字符串
 */
function ascii_decode($sacii)
{
    $asc = str_split(strtolower($sacii), 2);
    $str ='';
    for ($i = 0; $i < count($asc); $i++) {
        $str.= chr(hexdec($asc[$i][0].$asc[$i][1]));
    }
    return mb_convert_encoding($str, 'UTF-8', 'GBK');
}

 

还有事要忙,等晚上详细说下。

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...