php 对输入信息的进行安全过滤的函数代码


Posted in PHP onJune 29, 2012
// define constannts for input reading 
define('INPUT_GET', 0x0101); 
define('INPUT_POST', 0x0102); 
define('INPUT_GPC', 0x0103); /** 
* Read input value and convert it for internal use 
* Performs stripslashes() and charset conversion if necessary 
* 
* @param string Field name to read 
* @param int Source to get value from (GPC) 
* @param boolean Allow HTML tags in field value 
* @param string Charset to convert into 
* @return string Field value or NULL if not available 
*/ 
function get_input_value($fname, $source, $allow_html=FALSE, $charset=NULL) { 
$value = NULL; 
if ($source == INPUT_GET && isset($_GET[$fname])) 
$value = $_GET[$fname]; 
else if ($source == INPUT_POST && isset($_POST[$fname])) 
$value = $_POST[$fname]; 
else if ($source == INPUT_GPC) { 
if (isset($_POST[$fname])) 
$value = $_POST[$fname]; 
else if (isset($_GET[$fname])) 
$value = $_GET[$fname]; 
else if (isset($_COOKIE[$fname])) 
$value = $_COOKIE[$fname]; 
} 
if (empty($value)) 
return $value; 
// strip single quotes if magic_quotes_sybase is enabled 
if (ini_get('magic_quotes_sybase')) 
$value = str_replace("''", "'", $value); 
// strip slashes if magic_quotes enabled 
else if (get_magic_quotes_gpc() || get_magic_quotes_runtime()) 
$value = stripslashes($value); 
// remove HTML tags if not allowed 
if (!$allow_html) 
$value = strip_tags($value); 
// convert to internal charset 
return $value; 
}

用法:get_input_value('_uid', INPUT_GET)
PHP 相关文章推荐
谈谈新手如何学习PHP 默默经典版本
Aug 04 PHP
php+mysql事务rollback&commit示例
Feb 08 PHP
jQuery 源码分析笔记
May 25 PHP
第二章 PHP入门基础之php代码写法
Dec 30 PHP
如何在Ubuntu下启动Apache的Rewrite功能
Jul 05 PHP
PHP Switch 语句之学习笔记
Sep 21 PHP
PHP的Yii框架使用中的一些错误解决方法与建议
Aug 21 PHP
Yii2.0预定义的别名功能小结
Jul 04 PHP
thinkphp5 migrate数据库迁移工具
Feb 20 PHP
PHP判断是否是微信打开还是浏览器打开的方法
Feb 27 PHP
在laravel中实现将查询的对象转换为多维数组的函数
Oct 21 PHP
Laravel统一错误处理为JSON的方法介绍
Oct 18 PHP
PHP删除数组中的特定元素的代码
Jun 28 #PHP
PHP安全性漫谈
Jun 28 #PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
Jun 28 #PHP
深入了解 register_globals (附register_globals=off 网站打不开的解决方法)
Jun 27 #PHP
php数组中删除元素的实现代码
Jun 22 #PHP
php数据结构与算法(PHP描述) 查找与二分法查找
Jun 21 #PHP
通过PHP的内置函数,通过DES算法对数据加密和解密
Jun 21 #PHP
You might like
文件上传的实现
2006/10/09 PHP
php XPath对XML文件查找及修改实现代码
2011/07/27 PHP
php实现微信公众平台账号自定义菜单类
2015/10/11 PHP
PHP关键特性之命名空间实例详解
2017/05/06 PHP
JavaScript 入门基础知识 想学习js的朋友可以参考下
2009/12/26 Javascript
Jquery Uploadify上传带进度条的简单实例
2014/02/12 Javascript
基于jquery实现的图片在各种分辨率下未知的容器内上下左右居中
2014/05/11 Javascript
jQuery基础语法实例入门
2014/12/23 Javascript
JS中字符串trim()使用示例
2015/05/26 Javascript
举例讲解Node.js中的Writable对象
2015/07/29 Javascript
JS代码实现根据时间变换页面背景效果
2016/06/16 Javascript
Angular.js之作用域scope'@','=','&'实例详解
2017/02/28 Javascript
Bootstrap 表单验证formValidation 实现远程验证功能
2017/05/17 Javascript
详谈js的变量提升以及使用方法
2018/10/06 Javascript
vue h5移动端禁止缩放代码
2019/10/28 Javascript
Vue中keep-alive 实现后退不刷新并保持滚动位置
2020/03/17 Javascript
PHP 502bad gateway原因及解决方案
2020/11/13 Javascript
python发送邮件实例分享
2017/07/28 Python
python导入pandas具体步骤方法
2019/06/23 Python
python shapely.geometry.polygon任意两个四边形的IOU计算实例
2020/04/12 Python
纯HTML5+CSS3制作生日蛋糕代码
2016/11/16 HTML / CSS
英语系本科生个人求职信
2013/09/21 职场文书
商务助理岗位职责
2013/11/13 职场文书
优秀高中生事迹材料
2014/02/11 职场文书
入股协议书
2014/04/14 职场文书
中共广东省委常委会党的群众路线教育实践活动整改方案
2014/09/23 职场文书
优秀教师个人总结
2015/02/11 职场文书
2015年端午节活动方案
2015/05/05 职场文书
2015年小学语文教学工作总结
2015/05/25 职场文书
安全生产培训心得体会
2016/01/18 职场文书
二年级作文之动物作文
2019/11/13 职场文书
如何用PHP实现多线程编程
2021/05/26 PHP
MYSQL 无法识别中文的永久解决方法
2021/06/03 MySQL
详解Java实践之抽象工厂模式
2021/06/18 Java/Android
C站最全Python标准库总结,你想要的都在这里
2021/07/03 Python
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server