您好,欢迎来到三六零分类信息网!老站,搜索引擎当天收录,欢迎发信息

php如何过滤不可见字符

2024/3/28 6:56:15发布28次查看
php过滤不可见字符的方法:首先创建一个php代码示例文件;然后定义一个“filternonprintablechar”方法;接着通过isset、ord等函数实现过滤逻辑;最后通过“var_dump”输出过滤结果即可。
推荐:《php视频教程》
php过滤不可见字符
编码知识
ascii码为标准符号、数字、英文等进行了保留,取值范围是0~127,还有一部分作为扩展ascii码128~255。当操作系统采用非ascii编码时(比如汉字编码),一般用扩展ascii码来进行,约定用128~255范围的编码连续2~3甚至4个字节来进行汉字编码。
所以可以判断ascii码十进制值是否大于127来筛选出汉字。
php代码
<?php/** * @param $str * @return string * 过滤不可见字符,支持中文过滤 * 0至31和127这33个编码是不可见的特殊字符(控制符) */function filternonprintablechar($str){ $i = 0; $newstr = ''; while (isset($str[$i])) { $char = $str[$i]; $asc = ord($char); if ($asc > 31 && $asc < 127 || $asc > 127) { $newstr .= $char; } $i++; } return $newstr;}$str = chr(1) ."a3#2%1". chr(2) . chr(54) . "s哈哈ad~a好的s";var_dump(filternonprintablechar($str));$str = "“ascii码为标准符号、数字、英文等进行了保留,取值范围是0~127,还有一部分作为扩展ascii码128~255当操作系统采用非ascii编码时(比如汉字编码),一般用扩展ascii码来进行,约定用128~255范围的编码连续2~3甚至4个来进行...”";var_dump(filternonprintablechar($str));
以上就是php如何过滤不可见字符的详细内容。
该用户其它信息

VIP推荐

免费发布信息,免费发布B2B信息网站平台 - 三六零分类信息网 沪ICP备09012988号-2
企业名录 Product