$_GET['goods_id']+0 的使用详解

yipeiwu_com7年前PHP代码库

目的: 为了防止sql注入,tid,goods_id都是正整数类型,防止人为了在后面追加 ?tid=1 or 1 这样的语句.
原理: 不管你的参数多么险恶,+0后都老老实实变成数值类型

比如 '?tid=1 or 1' , $_GET['tid']+0 后值变成1;

有学生问,你为什么不用(int)强转或intval来转换.
1: 用哪种方式,目的都是一样的
2: 用+0,只需要打2个字符,用(int)要打5个,intval()要打8个.
3: 对于+0,我不需要关心$tid是整型还是浮点型,还是大于2^32的长整型(如mysql中取得bigint), +0都能适应.
而用强转,则会发生溢出,当然你可以说,我用float来转,那不是还得分情况区别吗.

相关文章

php上传图片之时间戳命名(保存路径)

html代码: <div id="images" style="width:250px;height:120px;background:#fff;border:1px soli...

PHP+Oracle本地开发环境搭建方法详解

安装instant client 首先,是从https://www.oracle.com/technetwork/topics/linuxx86-64soft-092277.html下载...

PHP正则验证字符串是否为数字的两种方法并附常用正则

php 正则验证字符串是否为数字 方法一: php中利用正则表达式验证字符串是否为数字一件非常容易的事情,最主要的是如何写好正则表达式以及掌握正则表达式的写法,在此利用正则表达式的方式来...

用php+javascript实现二级级联菜单的制作

 大体思路是这样的:为了不让先前的页面刷新,我用iframe潜入了一个二级子页面,用来读取数据库中的数据,最后把想要的数据传递给父级页面,完成数据的选择和转移。 主要程序代码如...

PHP工程师VIM配置分享

PHP工程师VIM配置分享

关于我的vim配置 经常在服务器上写代码,一个朋友提供了关于他的vim配置,在此分享给大家。 界面效果图: .vimrc 内容如下  "==================...