从数组怎么查找key对应的值?
问题:
<br>$arr = [5=>'name',8=>'age',10=>'city']; $num = '5,10'; $str = ''; //如何查找5,10对应的值,就是输出'name,city',除了foreach还有什么更方便的办法? foreach($arr as $key=>$value){ if(strpos($num,$key) !== false) { $str.=$value; } }
方法:
用array_key_exists判断,分解$num后通过array_key_exists在$arr数组寻找相应的值后在implode到一起。
<?php $arr = array(5=-->'name',8=>'age',10=>'city'); $num = '5,10'; $str = array(); $explode = explode(',',$num); foreach($explode as $key){ if(array_key_exists($key,$arr)){ array_push($str,$arr[$key]); } } echo implode(',',$str); ?>
更多相关技术知识,请访问PHP中文网!