当我尝试在php中第二次使用in_array函数获取相同的数组变量时,我得到以下错误:
in_array()期望参数2是数组,字符串在
中给出
当我在条件is_array中包装函数时,它返回false,我已经使用print_r打印变量及其显示的数组结构,这里是代码:
$chosenCour = array();
$chosenServ = array();
foreach ($preferences as $preference) {
if(!in_array($preference['courier'],$chosenCour)){
$chosenCour[] = $preference['courier'];
}
if(!in_array($preference['courier_service'],$chosenServ)){
$chosenServ[]= $preference['courier_service'];
}
}
foreach ($couriers as $courier) {
$courCond = false;
if(is_array($chosenCour)){
if(in_array($courier['courier_id'],$chosenCour)){
$courCond = true;
}
}
}
答案 0 :(得分:0)
检查非空数组的附加条件
foreach ($couriers as $courier) {
$courCond = false;
if(is_array($chosenCour) && count($chosenCour) > 0){
if(in_array($courier['courier_id'],$chosenCour)){
$courCond = true;
}
}
}