php 处理数字超出10位数据库内容变成2147483647处理方法

在处理过滤数字字段时,我们经常使用intval(num),(int)num 强制转换数字类型的方式防止注入

但是当处理的数据大于2147483647 时,数据会强制使用边界替代原数据。

1.强制转换类型,intval(num),(int)num(mum小于等于2147483647),

2.num=num+0 这样php也会自动给你转换

$n="n";

$a=2147483648.05555;
echo intval($a).$n; //result  -2147483648
echo (int) $a,$n;//result  -2147483648
echo floatval($a).$n;//result  2147483648.0556

echo floor(floatval($a)).$n;//result  2147483648

其他防注入方法

php自带函数去除html标记

 

strip_tags
  去掉 HTML 及 PHP 的标记。
  语法: string strip_tags(string str);
  传回值: 字串
  函式种类: 资料处理
  内容说明
  本函式可去掉字串中包含的任何 HTML 及 PHP 的标记字串。若是字串的 HTML 及 PHP 标签原来就有错,例如少了大于的符号,则也会传回错误。而本函式和 fgetss() 有着相同的功能。
  htmlspecialchars
  将特殊字元转成 HTML 格式。
  语法: string htmlspecialchars(string string);
  传回值: 字串
  函式种类: 资料处理
  本函式将特殊字元转成 HTML 的字串格式 ( &....; )。最常用到的场合可能就是处理客户留言的留言版了。
  & (和) 转成 & 
  " (双引号) 转成 " 
  < (小于) 转成 < 
  > (大于) 转成 > 
  此函式只转换上面的特殊字元,并不会全部转换成 HTML 所定的 ASCII 转换。
  使用范例 
 

$new = htmlspecialchars("Test", ENT_QUOTES);  
echo $new;  
?>  

 

 

 

php 处理数字超出10位数据库内容变成2147483647处理方法
php 处理数字超出10位数据库内容变成2147483647处理方法标题图片

延伸阅读:

    无相关信息
标签:

上一篇:解决Mysql错误Too many connections的方法

下一篇:301跳转中特殊要求的设置方法

留言与评论(共有 0 条评论)
   
验证码: