![](/img/trans.png)
[英]Extract IDs from ArrayCollection to compare to array of IDs
[英]filtering ids from checkboxnames
我有一些可以检查的复选框。 他们看着像是
<input type="checkbox" name="order[123]" value="1">
现在我正在检查formdata,我在这个方式中按顺序过滤数组中的ID,然后我在数据库中查找它们。
$orderids = preg_grep('/^\d+$/', array_keys($_POST['order']));
有没有更有效的方法来做到这一点?
使用正则表达式,您确保不使用恶意字符串,但不检查数据库中的可行性。 (例如, order[999999999999999999999999]
会传递正则表达式,但在数据库中没用。)
最真实的验证是使用array_intersect
对数据库传播的id运行它们。
$valid_ids=array_intersect(array_keys($_POST['order']),$db_orderids_array)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.