在线等!将又键构成的字符串, 替换为相对应的值, 或者说是一次性取多个数组的值, 这个用PHP该怎么写?万分感谢

问题:
$s="1,2,3,4";
$a=[1=>'一',2=>'二',3=>'三',4=>'四'];
最重要达到的效果:
"一,二,三,四"
PHP7以上
再备注一下吧:一行代码,一行代码实现效果.
暮色呼如
浏览 271回答 2
2回答

繁花不似锦

代码

宝慕林4294392

可以用数组函数$result=array_map(function($arrayKey)use($a){return$a[$arrayKey]??null;},explode(',',$s));$result=implode(',',$result);或者$result=array_reduce(explode(',',$s),function($result,$item)use($a){return$result.="{$a[$item]},";},'');$result=trim($result,',');或者$result=array_intersect_key($a,array_combine(explode(',',$s),explode(',',$s)));$result=implode(',',$result);没有更精简的方式了,php并没有提供一次获取多个key的值的函数,只能自己封装一下,以上方式更推荐第一种,逻辑清楚效率高
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript