Laravel hợp nhất các bộ sưu tập theo khóa

Trước khi nói về việc hợp nhất hai hoặc nhiều bộ sưu tập, hãy giới thiệu với bạn về bộ sưu tập Laravel

Bộ sưu tập Laravel là gì?

Laravel sử dụng Eloquent ORM (Object-Relational Mapping) để làm việc với cơ sở dữ liệu trả về kết quả trong lớp bộ sưu tập (Illuminate\Support\Collection)

Laravel Collection đang cung cấp tính năng mở rộng cho mảng PHP với các phương thức mạnh mẽ của nó. Bộ sưu tập Laravel cho phép chúng tôi lọc và sửa đổi dữ liệu bằng cách sử dụng rất nhiều phương thức có sẵn

Tạo bộ sưu tập Laravel tùy chỉnh

Chúng ta có thể tạo bộ sưu tập Laravel tùy chỉnh bằng cách sử dụng hàm trợ giúp Collect() từ mảng

$collection = collect([
    [
        ‘fruit’=> ‘apple’,
	‘amount’=> 320
    ],
    [
        ‘fruit’=> ‘banana’,
	‘amount’=> 70
    ],
    [
        ‘fruit’=> ‘grapes’,
	‘amount’=> 60
    ],
]);

Lặp qua bộ sưu tập

Là mảng php, các bộ sưu tập của Laravel cũng cho phép chúng ta lặp lại chúng dưới dạng các trình vòng lặp

Xem thêm. Hướng dẫn từng bước để tạo dự án Laravel đầu tiên của bạn

$tasks = App\task::all();

foreach ($tasks as $task) {
    echo $task->title;
}

bùng nổ. nó ở đây

Hãy cuộn hợp nhất ()

Phương thức merge() giúp chúng ta hợp nhất bộ sưu tập hoặc mảng với bộ sưu tập được nhắm mục tiêu

$array = [‘fruit’=>’apple’];
$collection = collect([‘amount’=>450]);

Không

Bạn không thể làm như thế này

$new = $array->merge($collection);

Bởi vì merge() là phương thức của bộ sưu tập không phải mảng

làm

Ừ. Bạn có thể làm được

$new = $collection->merge($array);

Bây giờ, nó sẽ hoạt động rất tốt
Và cả hai có thể là bộ sưu tập

$collection1 = collect([‘fruit’=>’apple’]);
$collection2 = collect([‘amount’=>450]);

$new = $collection1->merge($collection2);

Sự cố ghi đè cột

Nếu cả hai bộ sưu tập có cùng một cột, có thể là một hoặc nhiều thì bộ sưu tập2 sẽ ghi đè lên bộ sưu tập1

$collection1 = collect(
	[‘fruit’=>’banana’, ‘amount’=>70]
);

$collection2 = collect(
	[‘fruit’=>’apple’, ‘amount’=>230]
);
$new = $collection1->merge($collection2);

đầu ra sẽ là

Collection {#219 ▼
  #items: array:2 [▼
    "fruit" => "apple"
    "amount" => 230
  ]
}

Tại đây, bạn có thể thấy bộ sưu tập2 ghi đè lên các cột của bộ sưu tập1. Để ngăn chặn điều này, hãy làm như sau

________số 8_______

đầu ra sẽ là

Collection {#219 ▼
  #items: array:2 [▼
    0 => array:2 [▼
      "fruit" => "banana"
      "amount" => 70
    ]
    1 => array:2 [▼
      "fruit" => "apple"
      "amount" => 230
    ]
  ]
}

Bạn đã thấy sự khác biệt chưa?
Đây chỉ là một cách để làm điều đó nhưng Nó cũng có thể được thực hiện với một cách tiếp cận khác

Hy vọng nó đáng đọc nếu vậy tại sao bạn không bình luận và chia sẻ nó. Hãy tin tôi đi, mọi chia sẻ và bình luận của bạn đều có giá trị đối với tôi

Hôm nay, chúng tôi muốn chia sẻ với bạn Cách hợp nhất hai Eloquent Collection trong Laravel?. Trong bài đăng này, chúng tôi sẽ cho bạn thấy bộ sưu tập laravel kết hợp mà không trùng lặp, hãy nghe về laravel kết hợp hai bộ sưu tập theo khóa, chúng tôi sẽ cung cấp cho bạn bản demo và ví dụ để thực hiện. Trong bài đăng này, chúng ta sẽ tìm hiểu về cách tạo bộ sưu tập trống trong laravel với một ví dụ

Làm cách nào để hợp nhất hai bộ sưu tập Eloquent trong Laravel?

nội dung

Cũng nên đọc phần này 👉   Xác thực biểu mẫu Codeigniter với Google reCAPTCHA

Có những điều sau đây Đơn giản về cách hợp nhất hai bộ sưu tập Eloquent trong Laravel?

Vì tôi sẽ đề cập đến Bài đăng này với ví dụ Hoạt động trực tiếp để phát triển mảng hợp nhất các bộ sưu tập của laravel, do đó, Laravel 6 Bộ sưu tập Hợp nhất Nhiều Giá trị Bộ sưu tập Với sự hợp nhất được sử dụng cho ví dụ này như bên dưới

Laravel làm cách nào để hợp nhất hai bộ sưu tập Eloquent?

Nếu chúng ta muốn kết hợp nhiều bộ sưu tập Dữ liệu trong Laravel 6 hùng hồn, đây là cách đơn giản và tốt nhất để làm điều đó

Trong bài đăng này, chúng tôi sẽ cung cấp cho bạn thông tin về Laravel Collection Merge. Làm cách nào để hợp nhất hai bộ sưu tập Eloquent?. Hãy nghe chúng tôi cung cấp cho bạn thông tin chi tiết về Laravel Collection Merge. Làm cách nào để hợp nhất hai bộ sưu tập Eloquent? Và cách sử dụng nó cũng cung cấp cho bạn bản demo cho nó nếu cần thiết

Xin chào Dev,

Trong ví dụ nhanh này, hãy xem ví dụ hợp nhất bộ sưu tập của laravel. Ở đây bạn sẽ tìm hiểu hợp nhất bộ sưu tập laravel theo giá trị. Trong bài viết này, chúng ta sẽ triển khai một collections hợp nhất eloquent trong laravel. bạn sẽ học các bộ sưu tập hợp nhất hùng hồn

Tôi sẽ giải thích cho bạn ví dụ từng bước về cách hợp nhất bộ sưu tập người dùng trong laravel. tôi cũng sẽ cung cấp cho bạn ví dụ về cách hợp nhất bộ sưu tập với tính năng duy nhất trong laravel 6 và laravel 7. tôi cũng sẽ cung cấp cho bạn ví dụ về cách hợp nhất hai bộ sưu tập laravel hùng hồn

Vì vậy, hãy xem ví dụ dưới đây

ví dụ 1

public function index()

{

$firstCollection = collect(['One', 'Two', 'Three']);

$secondCollection = collect(['Four', 'Five']);

$mergedCollection = $firstCollection->merge($secondCollection);

$mergedCollection->all();

dd($mergedCollection);

}

đầu ra

IlluminateSupportCollection Object

(

[items:protected] => Array

(

[0] => One

[1] => Two

[2] => Three

[3] => Four

[4] => Five

)

)

ví dụ 2. Bộ sưu tập Laravel Hợp nhất duy nhất

public function index()

{

$firstCollection = collect(['One', 'Two', 'Three']);

$secondCollection = collect(['Three', 'Four', 'Five']);

$mergedCollection = $firstCollection->merge($secondCollection);

$mergedCollection = $mergedCollection->unique(function ($item) {

return $item;

});

$mergedCollection->all();

dd($mergedCollection);

}

đầu ra

IlluminateSupportCollection Object

(

[items:protected] => Array

(

[0] => One

[1] => Two

[2] => Three

[4] => Four

[5] => Five

)

)

ví dụ 3. Bộ sưu tập Hợp nhất Eloquent của Laravel

Xem thêm. Bộ sưu tập Laravel độc đáo. Xóa các bản sao khỏi Bộ sưu tập Laravel

public function index()

{

$firstCollection = Patient::get();

$secondCollection = User::get();

$mergedCollection = $firstCollection->merge($secondCollection);

$mergedCollection->all();

}

Tôi hy vọng nó có thể giúp bạn…

Hy vọng mã và bài đăng này sẽ giúp bạn triển khai Laravel Collection Merge. Làm cách nào để hợp nhất hai bộ sưu tập Eloquent?. nếu bạn cần bất kỳ trợ giúp hoặc bất kỳ phản hồi nào, hãy đưa ra trong phần bình luận hoặc bạn có ý tưởng hay về bài đăng này, bạn có thể đưa ra phần bình luận. Nhận xét của bạn sẽ giúp chúng tôi giúp bạn nhiều hơn và cải thiện chúng tôi. chúng tôi cũng sẽ cung cấp cho bạn loại bài đăng thú vị hơn này trong phần nổi bật,

Làm cách nào để hợp nhất 2 bộ sưu tập trong Laravel?

Làm cách nào để lọc bộ sưu tập theo khóa trong Laravel?

Bộ sưu tập Laravel cung cấp khả năng lọc các mục của bộ sưu tập bằng cách sử dụng một cặp giá trị khóa bằng cách sử dụng phương thức where() . Phương thức where() sẽ kiểm tra xem khóa $ có giá trị nào đó bằng với giá trị $ được cung cấp hay không. Ngoài ra, bạn có thể cung cấp thêm một đối số $operator tham số để kiểm soát việc so sánh $key và $value.

Làm cách nào để hợp nhất bộ sưu tập với mảng trong Laravel?

->concat() là một giải pháp tốt hơn trong việc hợp nhất bộ sưu tập cơ sở dữ liệu. $allItems = new \Illuminate\Database\Eloquent\Collection; . The reason for this is when merging they take ID of the table as the key.

Làm cách nào để kiểm tra xem bộ sưu tập có giá trị trong Laravel không?

Phương thức Laravel contains() . Nếu bạn truyền một giá trị cho phương thức contains(), nó sẽ kiểm tra xem bộ sưu tập có bất kỳ giá trị nào khớp với tham số hay không.