如何在PHP中从给定二维数组生成目标结构新数组
PHP二维数组转指定一维数组的解决方案
方法一:使用array_column函数(PHP 5.5+ 推荐)
这是最简洁高效的实现方式,array_column可直接从二维数组中提取指定键值对,将offer_id作为新数组的键,quantity作为对应的值:
$originalArray = [ ['offer_id' => 62122, 'quantity' => 1], ['offer_id' => 62123, 'quantity' => 2], ['offer_id' => 62124, 'quantity' => 2], ]; $newArray = array_column($originalArray, 'quantity', 'offer_id'); print_r($newArray);
执行后输出结果即为你需要的一维数组结构。
方法二:使用foreach循环(兼容所有PHP版本)
如果你的PHP版本低于5.5,或者需要更灵活的自定义逻辑,可通过循环遍历实现:
$originalArray = [ ['offer_id' => 62122, 'quantity' => 1], ['offer_id' => 62123, 'quantity' => 2], ['offer_id' => 62124, 'quantity' => 2], ]; $newArray = []; foreach ($originalArray as $item) { $newArray[$item['offer_id']] = $item['quantity']; } print_r($newArray);
两种方法均能达成需求,优先推荐第一种,代码更简洁易维护。
内容的提问来源于stack exchange,提问作者vicky
相关产品推荐
相关产品推荐

