我有一个这样的数组,我试图搜索一个值 使用这个数组:
$arr = Array('Slovenly Mexico','Slovenly Europe','Greece');
我正在使用这种条件。请帮忙
if($a[storename] == $arr[$i]){
//some code
}
但它无法正常工作,因为它会搜索为索引值,因此会出错。
Array
(
[0] => Array
(
[storename] => Greece
)
[1] => Array
(
[storename] => Slovenly Europe
)
[3] => Array
(
[storename] => Slovenly Europe
)
[4] => Array
(
[storename] => Greece
)
[5] => Array
(
[storename] => Slovenly Mexico
)
[6] => Array
(
[storename] => Slovenly Europe
)
[7] => Array
(
[storename] => Slovenly Mexico
)
}
答案 0 :(得分:2)
你可以使用in_array()
例如,
$sizeofarray=sizeof($a);
for($i=0;$i<sizeofarray;$i++)
{
if(in_array($a[$i][storename],$arr))
{
echo "Found";
break;
}
else
echo "Not found";
}
答案 1 :(得分:2)
看看这个功能:
http://php.net/manual/en/function.array-search.php
<?php
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search('green', $array); // $key = 2;
$key = array_search('red', $array); // $key = 1;
?>
答案 2 :(得分:1)
试试这个
in_array($a[storename], $arr)
答案 3 :(得分:1)
您可以使用数组bu
搜索值A。
in_array
- 检查数组中是否存在值。in_array
返回布尔值
<?php
$os = array("one", "two", "three", "four");
if (in_array("two", $os)) {
echo "Got two";
}
if (in_array("one", $os)) {
echo "Got one";
}
?>
B。 您也可以使用
array_search
- 在数组中搜索给定值,并在成功时返回相应的键
<?php
$array = array(0 => 'one', 1 => 'two', 2 => 'three', 3 => 'four');
$key = array_search('one', $array); // $key = 0;
$key = array_search('four', $array); // $key = 3;
?>
进一步参考array_search和in_array