Php 搜索关联数组中是否存在元素
我有一个循环,如下所示:Php 搜索关联数组中是否存在元素,php,arrays,associative-array,Php,Arrays,Associative Array,我有一个循环,如下所示: for( $m = 0; $m < count( $spcl_holiday_list_r ); $m++ ) { $region_str = $spcl_holiday_list_r[$m]['region']; $region_arr = explode(",",$region_str); var_dump( $region_arr ) ; if( in_array( $hq_id , $region_arr ) )
for( $m = 0; $m < count( $spcl_holiday_list_r ); $m++ )
{
$region_str = $spcl_holiday_list_r[$m]['region'];
$region_arr = explode(",",$region_str);
var_dump( $region_arr ) ;
if( in_array( $hq_id , $region_arr ) )
{
$special_holidays += $special_holidays;
}
}
}
echo $special_holidays;
_数组($hq_id,$region_arr)中的
总是返回FALSE
!所以我想知道如何为关联数组实现_array()
中的函数?从我的阵列输出和需求来看,array\u key\u exists
也不是我的选择 我想您应该改为使用array_search()。
注意返回值可能是布尔值
if ( array_search($hq_id , $region_arr) !== FALSE )
如果返回false
,那是因为$hq\u id
在数组中不存在。那么var\u dump($hq\u id)
呢?此外,您应该更喜欢foreach
而不是for
,除非有理由使用后者(大多数情况下没有)。hq\u id
在这种情况下为10
。所以我希望总数是2
var\u dump($hq\u id)
--请不要让我乞讨。你试过array\u walk\u recursive
了吗?$special\u holidays+=$special\u holidays代码>=0+0+0+…
if ( array_search($hq_id , $region_arr) !== FALSE )