如何通过匹配数组中的字符串值来搜索数组键

时间:2010-01-03 06:56:12

标签: php arrays find string-matching

我正在尝试在匹配字符串的数组中找到键号。

我以这种方式尝试了array_search

$key = array_search("foo", $array);
echo $array[$key];

但打印$ array [0]

还有其他办法吗?

谢谢:)

2 个答案:

答案 0 :(得分:2)

如果找不到密钥,array_search会返回false。你必须检查(下面我的例子中的第3行)

$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search("green", $array); //the $key will be "2"
if ($key !== false) {
   echo $array[$key];
}

否则,您的代码似乎可以满足您的需求。如果有问题,请发布更多代码。

答案 1 :(得分:0)

我不是完全匹配整个字符串,只是一个部分,array_search仍然可以工作吗?

顺便说一句,我在每个执行preg_match的数组中循环,直到找到字符串,然后断开循环并将键存储在数组中