您的位置:首页 > 其它

安全、防注入 杂记

2016-06-17 15:25 239 查看
背景、概述
  早在Sql注入横行的前几年,字符串转化为整数就已经被列为每个web程序必备的操作了。web程序将get或post来的id、整数等值强制经过转化函数转化为整数,过滤掉危险字符,尽可能降低系统本身被Sql注入的可能性。
  现如今,虽然Sql注入已经逐渐淡出历史舞台,但是,为了保证web程序的正常运行,减少出错概率,更好的保证用的满意度,我们同样需要将用户的不正确输入转化为我们所需要的。

一:接收的参数为整型时,要做强制转化为整型处理

①强制类型转换方式   

强制类型转换方式,就是“在要转换的变量之前加上用括号括起来的目标类型”

<?php
$foo = "1"; // $foo 是字符串类型
$bar = (int)$foo; // $bar 是整型
?>


  ②内置函数方式   

   内置函数方式,就是使用PHP的内置函数intval进行变量的转换操作。

<?php
$foo = "1"; // $foo 是字符串类型
$bar = intval($foo); // $bar 是整型
?>


   如果参数是浮点型,可以使用floatval — 获取变量的浮点值

<?php
$var = '122.34343The';
$float_value_of_var = floatval ($var);
print $float_value_of_var; // 打印出 122.34343
?>


二:接收的参数为字符串时,要剥去字符串中的 HTML、XML 以及 PHP 标签

  ①内置函数方式   

   内置函数方式,就是使用PHP的内置函数strip_tags进行变量的转换操作。

<?php
$foo = "Hello <b>world!</b>"; // $foo 是字符串类型,含有html标签
$bar = strip_tags($foo); // $bar 是剥去字符串中的 HTML、XML 以及 PHP 标签的字符串
?>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: