900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > 多维数组循环读取有关问题

多维数组循环读取有关问题

时间:2022-05-27 10:22:45

相关推荐

多维数组循环读取有关问题

后端开发|php教程

array,gt,nbsp,cs,ar

后端开发-php教程

多维数组循环读取问题

多维数组

array(

‘a’=>array(

‘a2’=>array(‘dd’,’ff’,’gg’),

‘a3’=>array(‘dd’,’ff’,’gg’)

),

‘b’=>array(

‘b2’=>array(’22’,’55’,’88’),

‘b3’=>array(

‘cs’=>array(‘nn’,’mm’,’xx’)

)

)

)

一句话检测存活管理工具源码,vscode分屏,ubuntu 增加分区,iead tomcat,sqlite用cmd,租用服务器流量,js qq截图插件下载,松鼠前端开发框架,澳洲爬虫,php混淆解密工具,seo优化算法,360网站 加速,centos6 网页模板,discuz 新闻模板,js 设置页面大小,vb 学籍管理系统 信息修改 代码,ftp服务器端程序lzw

字符串

a.a2

b.b2

b.b3.cs

这儿离餐厅源码的英文,ubuntu关闭屏幕保护,代理爬虫访问vue,php对接源码,seo要写代码lzw

如何根据这个字符串读取相应的数组?

业务程序管理源码,vscode看电影插件,ubuntu 自制源,tomcat版本 查询,sqlite数据库优化体积,爬虫可以抓取参考文献吗,php 支持中文,放心的seo优化电话,驾校官方网站 模板,圣诞节网页背景,怎么看网站是dede模板lzw

比如

a.a2 = [‘a’][‘a2’] 结果是 array(‘dd’,’ff’,’gg’)

b.b2 = [‘b’][‘b2′] 结果是 array(’22’,’55’,’88’)

b.b3.cs = [‘b’][‘b3’][‘cs’] 结果是 array(‘nn’,’mm’,’xx’)

注:数组深度不限,最好不要遍历,绝对不能用eval

顺便问一下eval除了安全问题,效率是不是挺差的?

——解决方案——————–

PHP code

$ar = array( a=>array( a2=>array(dd,ff,gg), a3=>array(dd,ff,gg) ), =>array( 2=>array(22,55,88), 3=>array( cs=>array( n,mm,xx) ) ));$s = .b3.cs;$p =& $ar;foreach(explode(., $s) as $k) { if(isset($p[$k])) $p = $p[$k];}print_r($p);

------解决方案--------------------

PHP code

$ar = array( a=>array(a2=>array(dd,ff,gg),a3=>array(dd,ff,gg) ), =>array(2=>array(22,55,88),3=>array( cs=>array( n,mm,xx)) ));$s = .b3.cs;$s = explode(., $s);$p =& $ar;For($i=0;$i<count($s);$i++) { if(isset($ar[$s[$i]])) $ar = $ar[$s[$i]];}print_r($ar);

------解决方案--------------------

既然 绝对不能用eval

还要 不要遍历

那么你打算如何识别被 “.” 分隔的这些键值呢?

------解决方案--------------------

你如果想要不用foreach,如果不考虑效率问题可以自己写个函数递归取值,不过递归函数在php里效率低的可怕

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。