PHP

Laravel map() Collectionを加工しよう

Laravel

 

 

コレクションデータを加工するときに使えるよ🐱

 

こんな感じだよ

 

 

$collection = collect([4, 5, 6]);

$items = $collection->map(function ($item, $key) {
    return $item * 2;
});
$items->all();

// [8, 10, 12]

 

ここでコレクションを1つずつ加工しています

return $item * 2;

 

 

実装例

 

const LANGUAGE_CODE = 'jpn';
$book_contents = $this->i_c->searchWithSolds($book_ids, [
    'is_publish' => $this->getIsPublish(),
    'sold' => true
])
$book_contents->map(function ($item) {
    $item->image = json_decode($item->image, true);
    return $item;
});

$response_data = [
    'items' => $this->searchByLanguage($book_contents, self::LANGUAGE_CODE)
]
return $response_data;

 

コレクションのimageプロパティをJSON型から配列型に加工しています。

$book_contents->map(function ($item) {
    $item->image = json_decode($item->image, true);
    return $item;
});

 

 

Amazonおすすめ

iPad 9世代 2021年最新作

iPad 9世代出たから買い替え。安いぞ!🐱 初めてならiPad。Kindleを外で見るならiPad mini。ほとんどの人には通常のiPadをおすすめします><

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)