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


Posted in PHP onMay 14, 2014

还记得以前在工作中,将爬来的其它网站的数据导到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 相关文章推荐
PHP及Zend Engine的线程安全模型分析
Nov 10 PHP
精美漂亮的php分页类代码
Apr 02 PHP
php5.2 Json不能正确处理中文、GB编码的解决方法
Mar 28 PHP
PHP中使用SimpleXML检查XML文件结构实例
Jan 07 PHP
php强大的时间转换函数strtotime
Feb 18 PHP
php进程间通讯实例分析
Jul 11 PHP
PHP文件下载实例代码浅析
Aug 17 PHP
php reset() 函数指针指向数组中的第一个元素并输出实例代码
Nov 21 PHP
利用PHP判断文件是否为图片的方法总结
Jan 06 PHP
Laravel5框架添加自定义辅助函数的方法
Aug 01 PHP
PHP集成环境XAMPP的安装与配置
Nov 13 PHP
Laravel 将数据表的数据导出,并生成seeds种子文件的方法
Oct 09 PHP
PHP 之 写时复制介绍(Copy On Write)
May 13 #PHP
PHP中copy on write写时复制机制介绍
May 13 #PHP
php读取富文本的时p标签会出现红线是怎么回事
May 13 #PHP
php的慢速日志引起的Mysql错误问题分析
May 13 #PHP
PHP实现的MongoDB数据库操作类分享
May 12 #PHP
PHP中date与gmdate的区别及默认时区设置
May 12 #PHP
PHP三元运算的2种写法代码实例
May 12 #PHP
You might like
BBS(php & mysql)完整版(八)
2006/10/09 PHP
一个简易需要注册的留言版程序
2006/10/09 PHP
php生成文件
2007/01/15 PHP
php GD绘制24小时柱状图
2008/06/28 PHP
php 时间计算问题小结
2009/01/04 PHP
PHP中for循环与foreach的区别
2017/03/06 PHP
Yii2选项卡的简单使用
2017/05/26 PHP
在云虚拟主机部署thinkphp5项目的步骤详解
2017/12/21 PHP
input 输入框内的输入事件详细分析
2010/03/17 Javascript
文本框水印提示效果的简单实现代码
2014/02/22 Javascript
使用delegate方法为一个tr标签加一个链接
2014/06/27 Javascript
轻松掌握JavaScript代理模式
2016/08/26 Javascript
火狐和ie下获取javascript 获取event的方法(推荐)
2016/11/26 Javascript
Angular 输入框实现自定义验证功能
2017/02/19 Javascript
js轮播图透明度切换(带上下页和底部圆点切换)
2017/04/27 Javascript
五步轻松实现JavaScript HTML时钟效果
2020/03/25 Javascript
react+redux的升级版todoList的实现
2017/12/18 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
详解从0开始搭建微信小程序(前后端)的全过程
2019/04/15 Javascript
js Math数学简单使用操作示例
2020/03/13 Javascript
[02:20]DOTA2英雄基础教程 黑暗贤者
2013/12/19 DOTA
[46:37]LGD vs TNC 2019国际邀请赛小组赛 BO2 第二场 8.15
2019/08/16 DOTA
python 切片和range()用法说明
2013/03/24 Python
在Django框架中伪造捕捉到的URLconf值的方法
2015/07/18 Python
python自动化脚本安装指定版本python环境详解
2017/09/14 Python
详解【python】str与json类型转换
2019/04/29 Python
python频繁写入文件时提速的方法
2019/06/26 Python
解决django 新增加用户信息出现错误的问题
2019/07/28 Python
python生成13位或16位时间戳以及反向解析时间戳的实例
2020/03/03 Python
Python urllib2运行过程原理解析
2020/06/04 Python
python 利用opencv实现图像网络传输
2020/11/12 Python
移动端开发HTML5页面点击按钮后出现闪烁或黑色背景的解决办法
2018/09/19 HTML / CSS
申论倡议书范文
2014/05/13 职场文书
中秋节晚会开场白
2015/05/29 职场文书
小学英语新课改心得体会
2016/01/22 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书