我有以下包含一個或多個對象的數組: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 回答

至尊寶的傳說
TA貢獻1789條經驗 獲得超10個贊
你可以使用array_replace,
$result = array_replace($yourArray, $options);
這是相同的語法
$basket = array_replace($base, $replacements,// you can pass multiple arrays);

holdtom
TA貢獻1805條經驗 獲得超10個贊
這可能會解決您的問題。
//assuming $arr is your array
foreach($arr as $a){
foreach($options as $key=>$value){
$a->$key = $value;
}
}
return $arr;
- 2 回答
- 0 關注
- 197 瀏覽
添加回答
舉報
0/150
提交
取消