验证复选框输入的正则表达式


Regex to validate checkbox input

我在使用复选框时遇到了codeigniter的验证过滤器的一些问题。我通常使用numeric过滤器复选框,假设它会过滤01,但现在我看到有几个例子中,这是失败的。

有没有人知道一个正则表达式,我可以把在preg_match验证复选框?

我希望这允许布尔值和其他一些1, 0, null, true, false,空等…

复选框只返回一个值。它的值(如其value=属性所示)或"true"。如果未选中复选框,则不会在POST请求中传递该复选框。因此,对于验证,您只需要检查两件事:

  1. 它一开始就被选中了吗?
  2. 它的值与你期望的一致吗?

:

if (isset($_POST['checkbox']) && ($_POST['checkbox'] == 'true') { //or whatever value you want

应该能很好地完成这个任务。除非我误解了你的问题,否则请评论。

复选框要么有值,要么没有值。如果它们有值,它们就会被检查,如果它们没有值,它们就不会被检查。

一个正则表达式在这里是非常多余的,您只需要检查复选框是否存在于提交的数据中。

$checkBoxChecked = isset ($_POST['checkbox_name_goes_here']);