首页 开发编程 正文

php怎么对已编码字符串(php字符串编码转换)

1、php怎么对已编码的url字符串进行解码2、php里面怎样把utf-8编码的字符串(如\u5e7f),多谢3、php怎么处理字符串php怎么对已编码的url字符串进行解码如果直接使用base64_encode和base64_decode方法的话,$data=str_replace(array('+',functionurlsafe...

今天给各位分享php怎么对已编码字符串的知识,其中也会对php字符串编码转换进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录:

php怎么对已编码的url字符串进行解码

如果直接使用base64_encode和base64_decode方法的话,生成的字符串可能不适用URL地址。下面的方法可以解决该问题:

URL安全的字符串编码:

复制代码

代码如下:

function urlsafe_b64encode($string) {

$data = base64_encode($string);

$data =

str_replace(array('+','/','='),array('-','_',''),$data);

return

$data;

}

URL安全的字符串解码:

复制代码

代码如下:

function urlsafe_b64decode($string) {

$data = str_replace(array('-','_'),array('+','/'),$string);

$mod4 =

strlen($data) % 4;

if ($mod4) {

$data .= substr('====',

$mod4);

}

return base64_decode($data);

}

php里面怎样把utf-8编码的字符串 (如 \u5e7f), 重新解码成中文,多谢

这种字符串是unicode编码的,而不是utf-8。json_decode()可以自动将json中的unicode字符串转换为utf-8。你可以自己构造一个json来实现。

12345?php$str = '\u5e7f\u4e1c\u6df1\u5733';$json = '{"foo":"' . $str . '"}';$d = json_decode($json, true);$str = $d['foo']; // 这个就是你想要的

望采纳!

php 怎么处理字符串

大家通过对PHP的学习,可以运用这一高级语言创建一个性能较高的网站。对于初学者来说,对于PHP字符串mbstring还是比较陌生的,下面我们就来介绍一下PHP字符串mbstring的具体应用。

多国语言并存就意味着多字节,PHP内置的字符串长度函数strlen无法正确处理中文字符串,它得到的只是字符串所占的字节数。对于GB2312的中文编码,strlen得到的值是汉字个数的2倍,而对于UTF-8编码的中文,就是1~3倍的差异了。

采用PHP字符串mbstring可以较好地解决这个问题。mb_strlen的用法和strlen类似,只不过它有第二个可选参数用于指定字符编码。例如得到UTF-8的字符串$str长度,可以用mb_strlen($str,’UTF-8′)。如果省略第二个参数,则会使用PHP的内部编码。内部编码可以通过mb_internal_encoding()函数得到,设置有两种方式:

1. 在php.ini中设置mbstring.internal_encoding = UTF-8

2. 调用mb_internal_encoding(”GBK”)

除了PHP字符串mbstring,还有很多切割函数,其中mb_substr是按字来切分字符,而mb_strcut是按字节来切分字符,但是都不会产生半个字符的现象。而且从函数切割对长度的作用也不同,mb_strcut的切割条件是小于strlen, mb_substr是等于strlen,看下面的例子,

? $str = ‘我是一串比较长的中文-’; echo “mb_substr:” . mb_substr($str, 0, 6, ‘utf-8′); echo ” “; echo “mb_strcut:” . mb_strcut($str, 0, 6, ‘utf-8′); ?

输出如下:

mb_substr:我是一串比较

mb_strcut:我是

需要注意的是,PHP字符串mbstring并不是PHP核心函数,使用前需要确保在php编译模块时加入mbstring的支持:

(1)编译时使用–enable-mbstring

(2)修改/usr/local/lib/php.inc

default_charset = “zh-cn”

mbstring.language = zh-cn

mbstring.internal_encoding =zh-cn

PHP字符串mbstring类库内容比较多,还包括mb_ send_ mail 之类的email处理函数等

php怎么对已编码字符串的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于php字符串编码转换、php怎么对已编码字符串的信息别忘了在本站进行查找喔。

本文转载自互联网,如有侵权,联系删除