用Post检查PHP检查数组

时间:2012-04-03 22:00:47

标签: php arrays post

PHP脚本如何检查值是否在数组中? 我希望它检查密码输入是否等于数组中的密码。

e.g。 if $ input ==“pass1”或“pass2”或“pass3”

5 个答案:

答案 0 :(得分:3)

来自php手册:

  

bool in_array(混合$ needle,数组$ haystack [,bool $ strict =   FALSE])使用松散比较搜索干草堆的针,除非   严格确定。

if(in_array($input, $somearray)){ .. }

答案 1 :(得分:1)

用于检查变量是否在数组中的PHP函数是in_array

像这样:

if (in_array($input, array("pass1", "pass2", "pass3")) {
 // do something
}

答案 2 :(得分:0)

几乎复制了Marc B在评论中所说的内容,示例代码是

<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
echo "Got Irix";
}
if (in_array("mac", $os)) {
echo "Got mac";
}
?>

在这个例子中,第二个if会失败,因为“mac”不包含在数组中。

答案 3 :(得分:0)

有几种方法。 in_array是一个,foreach是另一个。我不知道哪个更快,但这是你用foreach

的方式
foreach ($array as $a) {
 if ($a == "correct password") {
  //do something
 }
}

答案 4 :(得分:0)

这是另一种方式,

if(count(array_intersect(array($input), array("pass1", "pass2", "pass3"))) > 0){
     //do stuff
}