曲径通幽论坛

标题: intval() -- 获取变量的整数值 [打印本页]

作者: beyes    时间: 2013-9-8 20:54
标题: intval() -- 获取变量的整数值
intval() 的原型为:
int intval ( mixed $var [, int $base ] )

默认情况下,将变量 $var 转换为整数值。比如 intval(’42‘); 那么得到的值为 42 。

在一些情况下,该函数用来避免 SQL 注入。比如从 URL 上有:show.php?id=3 ,那么可以在代码里使用 $id = intval($id); 进行转换,这样一般可以防止单引号,和 and 1=1 或 and 1=2 的测试,比如下面代码:
[PHP] 纯文本查看 复制代码
<?php
    $id='3 and 1=2';
   
    $id = intval($id);
   
    echo $id;
?>

输出结果为 3,其自动忽略了后面的 and 1=2 ,这样达到了防止注入目的。




欢迎光临 曲径通幽论坛 (http://www.groad.net/bbs/) Powered by Discuz! X3.2