PHP中的in_array效率问题

 在使用in_array判断字符串是否在指定的数组当中时,在少量数量时还行,看不出效率问题,在几十万数据时就会产生性能问题,建议使用方法2进行判断

//测试in_array效率
$search_str = '在';
$base_str = ['我','在','不在','数','组','里','面','效','率','怎','么','样','子'];
//方法1
if(in_array($search_str,$base_str)){
   echo 'exit';
}else{
   echo 'no search';
}
//方法2
$flip_arr = array_flip($base_str);
if(isset($flip_arr[$search_str])){
   echo 'flip exit';
}else{
   echo 'flip no search';
}

 

你可能感兴趣的:(HTTP)