0
내가하려고하는 것은 객체의 배열에서 키 - 값 쌍이있는 배열을 반환해야한다는 것입니다.Laravel Collections를 사용하여 리 팩터링하는 객체가 실패합니다.
api에서 나는 이와 비슷한 객체를 얻습니다.
array:8 [▼
0 => TargetingSearch {#229 ▼
#data: array:6 [▼
"id" => "6005609368513"
"name" => "Software"
"audience_size" => 565991450
"path" => array:4 [▶]
"description" => ""
"topic" => "Technology"
]
#_type_checker: TypeChecker {#228 ▶}
}
간단한 방법은 객체를 반복하고 값을 배열로 밀어 넣는 것입니다.
$codes = [];
foreach($objects as $object) {
$codes[] = [
'id' => $object->id,
'name' => $object->name,
];
}
내가 정확히 필요한 것을 반환합니다.
['id' => 321, 'name' => "item1"],
['id' => 321, 'name' => "item1"],
['id' => 321, 'name' => "item1"],
나는 이것이 관리하기가 조금 어렵다고 생각하고 내가하려고하는 것은 좀 더 읽기 쉬운 것입니다.
예를 들어 Laravel 컬렉션 클래스를 사용하면 다음과 같이 할 수 있습니다.
$codes = collect($objects)->pluck('id', 'name')->toArray();
여기서 문제는 키를 반환하지 않는다는 것입니다. 내가
$codes = collect($objects)->only('id', 'name')->toArray();
를 사용하는 경우 개체 자체가 모든 것을 엉망으로되어 있기 때문에
["item1" => "123"],
["item2" => "321"],
["item3" => "213"],
그것은 하늘의 배열을 돌려줍니다.
누구든지이 문제를 어떻게 해결할 수 있는지 알고 있습니까? 당신이 사용하는 "지도"를 할 수