php小技巧之过滤ascii控制字符

Freda ·
更新时间:2024-09-21
· 685 次阅读

还记得以前在工作中,将爬来的其它网站的数据导到xml。但是会遇到一个问题:即网页会有ascII的控制字符。一开始以为是别人为了防止采集而加入的,然后发现一个就往过滤表里加一个。直到慢慢发现,他们都是ascii表里的字符。找到原因了,就好解决了。

代码如下:
/**
 * 根据ascii码过滤控制字符
 * @param type $string
 */
public static function special_filter($string)
{
 if(!$string) return '';
 $new_string = '';
 for($i =0; isset($string[$i]); $i++)
 {
  $asc_code = ord($string[$i]);    //得到其asc码
  //以下代码旨在过滤非法字符
  if($asc_code == 9 || $asc_code == 10 || $asc_code == 13){
   $new_string .= ' ';
  }
  else if($asc_code > 31 && $asc_code != 127){
   $new_string .= $string[$i];
  }
 }
 return trim($new_string);
}

您可能感兴趣的文章:php实现HTML实体编号与非ASCII字符串相互转换类实例php实现图片转换成ASCII码的方法浅析PHP的ASCII码转换类PHP详解ASCII码对照表与字符转换php自动获取字符串编码函数mb_detect_encoding解析php获取字符串的编码格式的方法(函数)PHP安全的URL字符串base64编码和解码php下检测字符串是否是utf8编码的代码PHP 截取字符串 分别适合GB2312和UTF8编码情况浅析PHP中的字符串编码转换(自动识别原编码)php中支持多种编码的中文字符串截取函数!PHP实现ASCII码与字符串相互转换的方法



技巧 PHP 字符 ascii

需要 登录 后方可回复, 如果你还没有账号请 注册新账号