如何使用数组php

时间:2019-06-20 08:07:20

标签: php arrays laravel

我有以下包含一个或多个对象的数组:

array:1 [▼
  0 => ApiS7File {#484 ▼
    +id: 19
    +type: "file"
    +z: "e1a4f81f.f90428"
    +name: ""
    +filename: "example/example.txt"
  }
]

如果用户向我提供选项数组

$options = ['filename' => 'hello', 'name' => 'thanks']

我希望使用用户提供的值覆盖数组对象:

array:1 [▼
  0 => ApiS7File {#484 ▼
    +id: 19
    +type: "file"
    +z: "e1a4f81f.f90428"
    +name: "thanks"
    +filename: "hello"
  }
]

我该如何实现?

2 个答案:

答案 0 :(得分:2)

这可能会解决您的问题。

//assuming $arr is your array

foreach($arr as $a){
   foreach($options as $key=>$value){
       $a->$key = $value;
   }
}
return $arr;

答案 1 :(得分:1)

您可以使用array_replace,

$result = array_replace($yourArray, $options);

这里是相同的语法

$basket = array_replace($base, $replacements,// you can pass multiple arrays);