我正在编写一个控制器操作,它从一个表单中获取两个输入:一个现有的用户 ID 和一个新的用户 ID。
两者都应该是整数值。
为了避免任何潜在的安全问题,只需检查 is_int 就足够了吗?
IE:
if (is_int($existingUserId)) {
}
这应该可以避免我认为的任何问题 - 但我不是 100% 确定
我正在编写一个控制器操作,它从一个表单中获取两个输入:一个现有的用户 ID 和一个新的用户 ID。
两者都应该是整数值。
为了避免任何潜在的安全问题,只需检查 is_int 就足够了吗?
IE:
if (is_int($existingUserId)) {
}
这应该可以避免我认为的任何问题 - 但我不是 100% 确定
您应该使用is_numeric
而不是is_int
.
根据is_int
文档:is_int('23') = bool(false)
。此外,文档说明:
要测试变量是数字还是数字字符串(例如表单输入,它始终是字符串),您必须使用 is_numeric()。