in_array变量赋值被当成一个值,求解决办法
时间:2021-07-01 10:21:17
帮助过:21人阅读
in_array变量赋值被当成一个值,求解决方法
in_array变量赋值被当成一个值,求解决方法
具体请看以下代码:
//$meb['learned']数据库取值为:排舞,街舞,主持人,讲师
$learn = explode(',',$meb['learned']);
//echo $learn[0].$learn[1].$learn[2].$learn[3].$learn[4].$learn[5];
$strp = str_replace(',', '", "', $meb['learned']);
$strp2 = '"'.$strp.'"';
$people = array($strp2);
print_r($people);
//以上
输出结果为 Array ( [0] => "排舞", "街舞", "主持人", "讲师" )
if (in_array('讲师',$people)){
echo "Match found";
}
else
{
echo "Match not found";
}
?>
in_array的判断结果输出为"Match not found",也即是说讲师没包含在$people中,可能原因是被当成一个整体。具体求解决方案,代码该如何优化下
分享到:
------解决方案--------------------$learn = explode(',',$meb['learned']);
$learn 不就是你需要的数组吗
if (in_array('讲师',$learn)){
echo "Match found";
}
else
{
echo "Match not found";
}