php数组获取某个值前面的所有元素

问题描述

$data=array (
  1 => '8',
  2 => '56',
  3 => '64',
  4 => '90',
  5 => '11',
  6 => '32',
  7 => '30',
  8 => '90',
)

如何获取$data的键值为11,前面的所有键值,放入一个新数组里面,和键值为11后面的所有键值,放入一个新数组里面

你期待的结果是什么?

有无简便的方法能获取,而我思路只能通过for加一个count统计再相减方式,

阅读 4.4k
3 个回答

给个思路参考吧,原数组直接化成JSON字符串,由于你有键值了,所以基本可以逆推出除键名外的内容,然后查找并分出两个子串出来(同时做些小处理让它们变成合法JSON),再各自还原回内存数据。

array_search 搜索11 获得索引后使用array_slice 剪切数组。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题