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 相关文章推荐
PHP4实际应用经验篇(6)
Oct 09 PHP
PHP执行linux系统命令的常用函数使用说明
Apr 27 PHP
php提交表单时判断 if($_POST[submit])与 if(isset($_POST[submit])) 的区别
Feb 08 PHP
PHP中基于ts与nts版本- vc6和vc9编译版本的区别详解
Apr 26 PHP
zf框架的数据库追踪器使用示例
Mar 13 PHP
php的ddos攻击解决方法
Jan 08 PHP
PHP各种异常和错误的拦截方法及发生致命错误时进行报警
Jan 19 PHP
Yii遍历行下每列数据的方法
Oct 17 PHP
laravel + vue实现的数据统计绘图(今天、7天、30天数据)
Jul 31 PHP
Laravel 类和接口注入相关的代码
Oct 15 PHP
php array 转json及java 转换 json数据格式操作示例
Nov 13 PHP
Laravel中如何轻松容易的输出完整的SQL语句
Jul 26 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
PHP 彩色文字实现代码
2009/06/29 PHP
国产PHP开发框架myqee新手快速入门教程
2014/07/14 PHP
详解PHP中的PDO类
2015/07/06 PHP
PHP检测链接是否存在的代码实例分享
2016/05/06 PHP
laravel 创建命令行命令的图文教程
2019/10/23 PHP
textarea不能通过maxlength属性来限制字数的解决方法
2014/09/01 Javascript
JavaScript中的console.group()函数详细介绍
2014/12/29 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
JS实现仿QQ效果的三级竖向菜单
2015/09/25 Javascript
smartcrop.js智能图片裁剪库
2015/10/14 Javascript
js去字符串前后空格的实现方法
2016/02/26 Javascript
Ionic如何创建APP项目
2016/06/03 Javascript
jQuery简单注册和禁用全局事件的方法
2016/07/25 Javascript
jQuery validate插件功能与用法详解
2016/12/15 Javascript
vue2.0实现倒计时的插件(时间戳 刷新 跳转 都不影响)
2017/03/30 Javascript
深入理解Commonjs规范及Node模块实现
2017/05/17 Javascript
vue父组件向子组件传递多个数据的实例
2018/03/01 Javascript
微信公众平台获取access_token的方法步骤
2019/03/29 Javascript
使用Karma做vue组件单元测试的实现
2020/01/16 Javascript
[15:39]教你分分钟做大人:龙骑士
2014/10/30 DOTA
[00:37]食人魔魔法师轮盘吉兆顺应全新至宝将拥有额外款式
2019/12/19 DOTA
在Python中使用AOP实现Redis缓存示例
2017/07/11 Python
200 行python 代码实现 2048 游戏
2018/01/12 Python
python PyTorch参数初始化和Finetune
2018/02/11 Python
python 除法保留两位小数点的方法
2018/07/16 Python
解决使用pycharm提交代码时冲突之后文件丢失找回的方法
2018/08/05 Python
python爬虫获取小区经纬度以及结构化地址
2018/12/30 Python
Python基础教程之if判断,while循环,循环嵌套
2019/04/25 Python
解决python3 安装不了PIL的问题
2019/08/16 Python
解决json中ensure_ascii=False的问题
2020/04/03 Python
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
如何查找和删除数据库中的重复数据
2014/11/05 面试题
干部鉴定材料
2014/05/18 职场文书
优秀教师个人材料
2014/12/15 职场文书
新教师个人总结
2015/02/06 职场文书
CSS 新特性 contain控制页面的重绘与重排问题
2021/04/30 HTML / CSS