php怎么处理不可见字符-PHP问题

资源魔 32 0

php解决不成见字符的办法:起首创立一个PHP文件;而后界说一个filterNonPrintableChar办法;接着正在办法体内经过while语句完成过滤不成见字符的性能逻辑;最初运转该文件便可。

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教程》

以上就是php怎样解决不成见字符的具体内容,更多请存眷资源魔其它相干文章!

标签: php php教程 php故障解决 php使用问题

抱歉,评论功能暂时关闭!