首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >学习整合

学习整合
EN

Stack Overflow用户
提问于 2010-07-09 11:01:49
回答 2查看 1.7K关注 0票数 0

你能告诉我intval的功能是什么吗?那这个呢?

代码语言:javascript
复制
'.intval($_POST['bla']).'
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-09 11:10:12

这是一种防止SQL注入的简单方法。如果您的查询如下:

代码语言:javascript
复制
$sql = "DELETE FROM salads WHERE id = " . $_POST['salad_id'];

然后,如果用户传入字符串"id“而不是实际的id,那么所有的沙拉都将被删除!!

但是如果你用intval()包住它,它会把所有不好的调料都转换成整数0,而且沙拉也不会受到影响。

代码语言:javascript
复制
$sql = "DELETE FROM salads WHERE id = " . intval($_POST['salad_id']);
票数 5
EN

Stack Overflow用户

发布于 2010-07-09 11:05:22

为什么不直接阅读the manual article

intval -获取变量的整数值

该页面的表格给出了一个很好的例子:

代码语言:javascript
复制
echo intval(42);                      // 42
echo intval(4.2);                     // 4
echo intval('42');                    // 42
echo intval('+42');                   // 42
echo intval('-42');                   // -42
echo intval(042);                     // 34
echo intval('042');                   // 42
echo intval(1e10);                    // 1410065408
echo intval('1e10');                  // 1
echo intval(0x1A);                    // 26
echo intval(42000000);                // 42000000
echo intval(420000000000000000000);   // 0
echo intval('420000000000000000000'); // 2147483647
echo intval(42, 8);                   // 42
echo intval('42', 8);                 // 34
echo intval(array());                 // 0
echo intval(array('foo', 'bar'));     // 1
票数 6
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3209513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档