亲爱的大家.
我在@L_301_0@数据库的一些表中使用整数PK.在从PHP脚本输入之前,我正在进行一些清理,包括intval($id)和$MysqLi-> real_escape_string().
查询非常简单
insert into `tblproducts`(`supplier_id`,`description`) values('$supplier_id','$description')
在这个例子中,$description通过real_escape_string(),而$supplier_id只是intval()’ed.
我只是好奇,如果有任何情况,当我需要将intval和real_escape_string同时应用于整数我插入数据库?所以基本上我真的需要使用吗?
$supplier_id = intval($MysqLi->real_escape_string($supplier_id));
谢谢.
最佳答案
intval方式比real_escape_string更快,因为real_escape_string必须连接到数据库并根据charset / collation转义.
原文链接:/mysql/433396.html你也可以像以下那样强制转换:
$val = (int)$val;
因此无需双重消毒