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

PHP - 将新对象添加到每个对象数组中

PHP - 将新对象添加到每个对象数组中

PHP
饮歌长啸 2023-09-08 21:33:17
考虑一下 PHP 中的这个对象数组: array:2 [      0 => array:4 [        "Row_Id" => 256        "Start_Date" => "2020-05-16"        "account_code" => ""        "caller_number" => "452"        ]          1 => array:4 [        "Row_Id" => 257        "Start_Date" => "2020-05-16"        "account_code" => ""        "caller_number" => "42"        ]      2 => array:4 [        "Row_Id" => 258        "Start_Date" => "2020-05-16"        "account_code" => ""        "caller_number" => "428"        ]    ]我想添加"callee_number:100"每个数组,所以我的输出应该如下所示:     array:2 [          0 => array:5 [            "Row_Id" => 256            "Start_Date" => "2020-05-16"            "account_code" => ""            "caller_number" => "452"            "callee_number" => "100"            ]                  1 => array:5 [            "Row_Id" => 257            "Start_Date" => "2020-05-16"            "account_code" => ""            "caller_number" => "42"            "callee_number" => "100"            ]          2 => array:5 [            "Row_Id" => 258            "Start_Date" => "2020-05-16"            "account_code" => ""            "caller_number" => "428"            "callee_number" => "100"            ]        ]我已将上述输入数组放入 $get 变量中。现在我调用array_push附加callee_number到每个数组:  array_push($get,[   'callee_number':'100'    ]);也尝试使用array_merge但callee_number没有被附加。我怎样才能做到这一点?
查看完整描述

2 回答

?
潇潇雨雨

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

给定以下数组:


$array = [

    [

        "Row_Id" => 256,

        "Start_Date" => "2020-05-16",

        "account_code" => "",

        "caller_number" => "452",

    ],

    [

        "Row_Id" => 257,

        "Start_Date" => "2020-05-16",

        "account_code" => "",

        "caller_number" => "42",

    ],

    [

        "Row_Id" => 258,

        "Start_Date" => "2020-05-16",

        "account_code" => "",

        "caller_number" => "428",

    ],

];

原生 PHP


$array = array_map(function ($item) { return $item + ['callee_number' => 100]; }, $array);

使用集合


$array = collect($array)->map(function ($item) { return $item + ['callee_number' => 100]; })->toArray();

使用 PHP 7.4 简写


$array = array_map(fn($item) => $item + ['callee_number' => 100], $array);

// Or

$array = collect($array)->map(fn($item) => $item + ['callee_number' => 100])->toArray();


查看完整回答
反对 回复 2023-09-08
?
跃然一笑

TA贡献1826条经验 获得超6个赞

要添加或修改每个子数组中的元素,您可以这样做:



foreach ($get as &$g) {

  $g["callee_number"] = 100;

}

或这个:



for ($c = 0; $c < count($get); $c++) {

$get[$c]["callee_number"] = 100;

}


查看完整回答
反对 回复 2023-09-08
  • 2 回答
  • 0 关注
  • 60 浏览

添加回答

举报

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