当前位置:首页 > 电脑知识 > 正文内容

墙裂推荐(php 字符转ascii)字符串转ascii码函数,php将子符串转为ascii码的方法,php将子符串转为ascii码的方法,

sauo3年前 (2022-09-17)电脑知识173

在处理数据时,由于数据太过复杂,为了保证数据的完整性需要将其中的部份转成 ascii 码,而php脚本也提供了这些方法,下面就由飞鸟慕鱼博客详细的说一下。

php ord() 函数

php 中的 ord() 函数,可以返回指定字符串中第一个字符的  ASCII 值。

例1:

PHP
echo ord(f); // 102 echo ord(feiniaomy.com); // 102复制

例2:

上面的示例输出的 ascii 码,不会被浏览器识别,需要我们在 ascii 码前面加上 “&#”.

PHP
echo &#.ord(f); // &#102 echo &#.ord(feiniaomy.com); // &#102复制

php 转换字符串为 ascii 码的方法

(1)、自定义php转 ascii 码的函数

PHP
/** * # 字符串转 ascii 码的方法 * @param $c 输入要处理的字符串 * @param $prefix 对转换后的 ascii 进行加工的字符 * feiniaomy.com 飞鸟慕鱼博客 * * @return string */ function ascii_encode($c, $prefix="&#") { $len = strlen($c); $scill = null; $a = 0; while ($a < $len) { $ud = 0; if (ord($c{$a}) >= 0 && ord($c{$a}) <= 127) { $ud = ord($c{$a}); $a += 1; } else if (ord($c{$a}) >= 192 && ord($c{$a}) <= 223) { $ud = (ord($c{$a}) - 192) * 64 + (ord($c{$a + 1}) - 128); $a += 2; } else if (ord($c{$a}) >= 224 && ord($c{$a}) <= 239) { $ud = (ord($c{$a}) - 224) * 4096 + (ord($c{$a + 1}) - 128) * 64 + (ord($c{$a + 2}) - 128); $a += 3; } else if (ord($c{$a}) >= 240 && ord($c{$a}) <= 247) { $ud = (ord($c{$a}) - 240) * 262144 + (ord($c{$a + 1}) - 128) * 4096 + (ord($c{$a + 2}) - 128) * 64 + (ord($c{$a + 3}) - 128); $a += 4; } else if (ord($c{$a}) >= 248 && ord($c{$a}) <= 251) { $ud = (ord($c{$a}) - 248) * 16777216 + (ord($c{$a + 1}) - 128) * 262144 + (ord($c{$a + 2}) - 128) * 4096 + (ord($c{$a + 3}) - 128) * 64 + (ord($c{$a + 4}) - 128); $a += 5; } else if (ord($c{$a}) >= 252 && ord($c{$a}) <= 253) { $ud = (ord($c{$a}) - 252) * 1073741824 + (ord($c{$a + 1}) - 128) * 16777216 + (ord($c{$a + 2}) - 128) * 262144 + (ord($c{$a + 3}) - 128) * 4096 + (ord($c{$a + 4}) - 128) * 64 + (ord($c{$a + 5}) - 128); $a += 6; } else if (ord($c{$a}) >= 254 && ord($c{$a}) <= 255) { //error $ud = false; } $scill .= $prefix.$ud.";"; } return $scill; }复制

(2)、调用函数

PHP
$str = feiniaomy.com; var_dump(ascii_encode($str)); // &#102;&#101;&#105;&#110;&#105;&#97;&#111;&#109;&#121;&#46;&#99;&#111;&#109;复制

注意:

1、浏览器会自动将 ascii 码转为实体的字符

2、在浏览器查看上面输出的结果时,要用查看源码的方式

本文链接:http://blog.sauo.top/?id=335 感谢分享!

分享到:

扫描二维码推送至手机访问。

版权声明:本文由冬眠先生个人博客发布,如需转载请注明出处。

本文链接:http://blog.sauo.top/?id=335

分享给朋友:

“墙裂推荐(php 字符转ascii)字符串转ascii码函数,php将子符串转为ascii码的方法,php将子符串转为ascii码的方法,” 的相关文章

新鲜出炉(ubuntu系统与centos系统区别)ubuntu还是centos,centos系统与ubuntu系统的区分,centos系统与ubuntu系统的区分,

免费领取腾讯云服务器! Linux的发行版有很多,而我们经常使用的为centos与ubuntu,下面这篇博文就说说这两个系统的发源与区别。 CentOS CentOS(Community Enterprise Operati...

这都可以(PHP百度百科)pHp是什么,php中关于strtotime函数31日取前几个月日期的BUG,php中关于strtotime函数31日取前几个月日期的BUG,

免费领取腾讯云服务器! 在使用php脚本中的 strtotime 函数取前几个月的日期时,发现每到31日时,取出的前几个月的日期都会出现错误。仔细检查了一下,发现在利用 strtotime 函数取前几个月的日期时,给 strtotime 函数的参数并不规范...

一篇读懂(PHP for循环)php跳出循环的语句,php中的几种循环语句,php中的几种循环语句,

免费领取腾讯云服务器! 列举几种php脚本中常用的几种循环语句,比如,for,foreach,do....while 等。 php for循环 for循环在很多语言中都经常用到,比如js语言,c语言,java语言等。...

干货分享(php输出json中文乱码)json数据中文乱码怎么办,解决 php json中文乱码的问题,解决 php json中文乱码的问题,

免费领取腾讯云服务器! php输出使用json_encode函数生成的json数据的时候,发现数据中的中文被转义成了unicode编码,如果使用ajax请求的json数据还好一点,浏览器会自动将unicode编码转义回来,但如果直接输出到浏览器上,那就会直...

不要告诉别人(php求数组交集)php数组取差集,php计算两个数组的交集与差集,php计算两个数组的交集与差集,

免费领取腾讯云服务器! php中计算两个数组之间的交集与差集可以使用 array_intersect() 与 array_diff() 数组处理函数,这两个数组的具体使用方法如下。 php计算两个数组之间的交集 array_...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。