PHP二维数组根据键值对获取一组数组 (不使用foreach)
$user = array(
0 => array(
'id' => 1,
'name' => '张三',
'email' => 'zhangsan@sina.com',
),
1 => array(
'id' => 2,
'name' => '李四',
'email' => 'lisi@163.com',
),
2 => array(
'id' => 5,
'name' => '王五',
'email' => '10000@qq.com',
),
......
);
比如我想获取当id=2时,该数组的全部内容,不使用foreach,在PHP 5.3版本下
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(7)
用array_filter也可以,但本质上还是循环
不用foreach 还可以用for 和 array_map,但是foreach好像效率更高一点
如果你能确认每个元素的id都唯一不重复,你可以先用foreach重构这个数组 用id作为这个数组的索引 然后用$arr[$id]的方式在别的地方取值
其实你用的函数也是帮你foreach了,大多数性能不如自己foreach的好
问题问的真的挺low。。。即使你用内置函数实现了,看上去挺干净,没有foreach,没有for
但是请问,不把数组遍历一遍你知道哪个内层数组是id=2的?
看大家还在这里忙着给你写答案,给大家给个赞