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代码

/**

* @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如何过滤不可见字符相关推荐

  1. android 过滤英文字符,Android编程之TextView的字符过滤功能分析

    本文实例分析了Android编程之TextView的字符过滤功能.分享给大家供大家参考,具体如下: TextView可以设置接受各式各样的字符,通过过滤指定的字符来满足不同应用的输入和显示要求. 通过 ...

  2. nginx 拦截非法字符,nginx禁止url访问特定字符,nginx过滤url访问

    nginx 拦截非法字符,nginx禁止url访问特定字符,nginx过滤url访问 参考代码一 #前缀为无限,后面的精准屏蔽字符 123 #资源宝分享:www.httple.net if ($req ...

  3. Java I/O流(File、字节流、字符流、过滤流、对象流)详解

    File以及I/O流 一.File类的使用 java.io.File类 代表硬盘上的一个文件或者目录 java.io.File类作用: 每个File类的对象表示一个磁盘文件或目录,其对象属性中包含了文 ...

  4. java字符流的父类_Java基于代码实战的字符流父类、字符转换流、缓冲字符流、过滤流...

    1. Java输入输出(I/O)流的知识回顾: 补充:因为这篇文章是基于上一篇的延续,因此将上一篇进行简单的回顾,以便理解本节内容. 1)输入输出(I/O)流分类:共分为字节型输入输出流和字符型输入输 ...

  5. 【C语言】编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出。

    题目: 编写程序,输入一个以回车符结束的字符串(少于80个字符),过滤去所有的非十六进制字符后,组成一个新字符串(十六进制形式),然后将其转换为十进制数后输出. **输入提示信息:"请输入十 ...

  6. 过滤ANSI文件中特殊“€”分隔符,过滤其他字符

    由于java无法获取ANSI文件中无法获取 "€" 字符,所以通过正则表达式分割字符,解决方法如下 public void readFileByScanner()throws Ex ...

  7. android设置输入框输入字符限制,Android EditText限制输入字符的方法总结

    Android EditText限制输入字符的方法总结 最近项目要求限制密码输入的字符类型, 例如不能输入中文.   现在总结一下EditText的各种实现方式,  以比较各种方法的优劣. 第一种方式 ...

  8. 信息学奥赛一本通 2047:【例5.16】过滤空格 | OpenJudge NOI 1.7 23:过滤多余的空格

    [题目链接] ybt 2047:[例5.16]过滤空格 OpenJudge NOI 1.7 23:过滤多余的空格 [题目考点] 1. 字符数组 2. string类 3. 计数 [题解代码] 解法1: ...

  9. java过滤汉字和英文,java判断及过滤汉字

    packagecom.test;importjava.util.regex.Matcher;importjava.util.regex.Pattern;public classTest { @org. ...

最新文章

  1. 大数据时代云计算在新媒体平台的应用研究
  2. 统计学习方法——CART, Bagging, Random Forest, Boosting
  3. html编辑器 br 被div,百度Ueditor编辑器DIV,html标签替换及代码被过滤问题解决方法...
  4. Selenium+java - 下拉框处理
  5. 【2019浙江省赛 - K 】Strings in the Pocket(马拉车,思维)
  6. 谈谈Java开发中的对象拷贝
  7. Java操作Json工具——Jackson
  8. 【12-05】面试题
  9. MFC列表控件(ListControl)
  10. JSON转Model内部实现解析
  11. opencv的sift算法
  12. linux系统安装r语言环境,R语言Linux环境安装说明
  13. 嵌入式单片机学习入门到大牛
  14. persevere的用法_努力奋斗的英文短语 努力的英文意思是
  15. poj 1655 树的重心
  16. 0.96寸OLED显示屏介绍
  17. 东北大学和西南大学计算机,东北大学、东南大学、中南大学、西南大学、西北大学,哪个最好?...
  18. 端口汇聚和端口聚合的区别
  19. STM32模拟GPS输出PPS、GPRMC与VLP16时钟同步
  20. BZOJ 1503: [NOI2004]郁闷的出纳员 Treap

热门文章

  1. 软件测试用例优秀例子_新手入门:想要做好软件测试,这些理论知识,你得好好掌握...
  2. 苹果手机内存怎么查_为什么苹果手机内存越用越小
  3. python列表、集合、字典推导测试
  4. 重复文件查找_Duplicate File Remover PRO for mac(Mac文件重复查找软件)
  5. oracle生成顺序编号,Oracle排序以及序号的输出 | 学步园
  6. CXF发布RestFul WebService和SOAP WebService
  7. 记录:注意Unity返回的所有数组,只是数组的副本
  8. 中欧 PHP 开发者大会因多元化争议而取消
  9. 大前端时代安全性如何做
  10. json是什么_如何利用Python处理JSON格式的数据,建议收藏!!!