安全、防注入 杂记

背景、概述
  早在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 标签的字符串
?> 
原文地址:https://www.cnblogs.com/wangyuman26/p/5594144.html