为了账号安全,请及时绑定邮箱和手机立即绑定

在php中组合值数组

在php中组合值数组

PHP
Qyouu 2022-05-27 16:04:08
我在根据 id 组合值时遇到问题。我有这样的数据:Array(     [0] => Array(        [id] => 1,        [id_name] => a        [id_vales] => 5     )     [1] => Array(        [id] => 1        [id_name] => a        [id_vales] => 4     )     [2] => Array(        [id] => 3        [id_name] => b        [id_vales] => 4    )    [3] => Array(        [id] => 3        [id_name] => b        [id_vales] => 3    ))然后,我想[id_values]根据 id 组合,所以我可以在php中获取这样的数据Array(   [0] => Array(      [id] => 1      [id_name] => a      [id_vales] => 5, 4    )    [1] => Array(      [id] => 3      [id_name] => b      [id_vales] => 4, 3    ))
查看完整描述

2 回答

?
慕容森

TA贡献1853条经验 获得超18个赞

您可以使用以下示例合并您的数组


<?php


$mainArray = array(array('id' => 1, 'id_name' => 'a', 'id_vales' => 5), 

      array('id' => 1,'id_name' => 'a','id_vales' => 4),

      array('id' => 3, 'id_name' => 'b','id_vales' => 4),

      array('id' => 3,'id_name' => 'b','id_vales' => 3)

);


$result = array();

$tempArray = array();

foreach($mainArray as $key => $value)

{

    if(isset($tempArray[$value['id']]))

    { 

        $tempArray[$value['id']] .= ", ".$value['id_vales'];

        $result[] = array('id' => $value['id'], 'id_name' => $value['id_name'], 'id_vales' => $tempArray[$value['id']]);

    }

    else

    {

        $tempArray[$value['id']] = "".$value['id_vales'];

    }

}

echo "<pre>";

print_r($result);

?>

您可以在此处找到运行示例https://paiza.io/projects/3sS3GXH7GHqoipH8k-YtBQ


输出:


Array

(

    [0] => Array

        (

            [id] => 1

            [id_name] => a

            [id_vales] => 5, 4

        )


    [1] => Array

        (

            [id] => 3

            [id_name] => b

            [id_vales] => 4, 3

        )


)


查看完整回答
反对 回复 2022-05-27
?
慕标5832272

TA贡献1966条经验 获得超4个赞

我为你创建了一个数组。从此数组中,您可以轻松创建数组并获得结果。


$data = array();

     foreach($array as $key=>$value){

            $data[$value['id']]['id'] = $value['id'];

            $data[$value['id']]['id_vales'][] = $value['id_vales'];

            $data[$value['id']]['id_name'] = $value['id_name'];


     }


查看完整回答
反对 回复 2022-05-27
  • 2 回答
  • 0 关注
  • 114 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信