安全 · 第 3 题,共 12 题

URL 参数 uid 的值为 "5 OR 1=1"。在 PHP 8 中,(int)$uid 返回什么?

有 1 个正确答案。 简单

显示答案

答案

  • B 5

解析

(int) 强制转换把字符串转换为整数,并读取开头的数字:"5 OR 1=1" 变为 5,附加的 SQL 部分被丢弃。如果文本不是以数字开头,例如 "abc",转换结果为 0。这使得 (int) 成为在进一步处理 ID 之前一种简单而有效的 清理(Sanitization) 手段。TypeError 只会出现在严格类型的函数参数上,而不会出现在显式强制转换中。不过,在 SQL 查询中,数字同样应作为命名参数传递,例如使用 Connection::PARAM_INT。

认证与考试

下一个考试是什么?

已有 19 项考试可以练习,21 项正在投票中。查看所有认证及官方信息,投出你的一票,或推荐你的考试。

查看全部认证