侧边栏壁纸
  • 累计撰写 168 篇文章
  • 累计创建 71 个标签
  • 累计收到 35 条评论

目 录CONTENT

文章目录

Laravel Collection集合去重教程

神兵小将
2023-02-02 / 0 评论 / 0 点赞 / 670 阅读 / 2,209 字 / 正在检测是否收录...

在本文中,我们将看到如何从 Laravel 集合中获取唯一值。文章包含有关 Laravel 集合的基本概念的非常机密的信息,并获得独特的价值。

对于这个 laravel 集合,我们将考虑一维数组和多维数组。

该类 Illuminate\Support\Collection 提供了一个流畅、方便的包装器来处理数据数组。例如,查看以下代码。我们将使用 collect 帮助程序从数组创建一个新的集合实例。

如上所述, collect 助手返回 Illuminate\Support\Collection 给定数组的新实例。

因此,创建一个集合非常简单:

$collection = collect([1, 2, 3]);

在 Laravel 8 教程中创建自定义 Facade 类
通过 JSON 文件创建 Laravel JSON Fake REST APIs 服务器
在 Laravel 8 中使用 jQuery 创建签名板并保存
在 Laravel 8 中使用 Croppie.js 在上传前裁剪图像
让我们开始吧。

安装 Laravel
我们将使用 composer 创建 laravel 项目。所以,请确保你的系统应该安装了 composer。如果没有,本文可能会帮助您在系统中安装作曲家。

这是创建 laravel 项目的命令-

$ composer create-project --prefer-dist laravel/laravel blog

启动 Laravel 的开发服务器 –

$ php artisan serve

网址:http://127.0.0.1:8000

假设 laravel 已经安装在你的系统中。

1 一维集合数组去重

在这个例子中,我们将考虑一个一维数组。我们将看到如何从中仅获取唯一值。

假设我们在/app/Http/Controllers文件夹中有一个控制器文件 SiteController.php

<? PHP
的
namespace App\Http\Controllers ;

use Illuminate\Http\Request;

Class SiteController extends Controllers
{
    public function index()
    {
        $data  = [ 1 , 2 , 2 , 3 , 1 , 4 , 3 , 5 , 6 , 7 , 8 , 7 , 8 , 9 , 9 , 5 ];
  
        $data   =  collect($data)->unique();
  
        dd ( $data);
    }
}

输出

当我们执行这个代码片段时,我们会得到这样的东西——

laravel-8-collection-get-unique-values-tutorial.webp

2 多维集合数组去重

在这个例子中,我们将考虑一个多维数组。我们将看到如何从中仅获取唯一值。

<? PHP

namspace App\Http\Controllers ;

use Illuminate\Http\Request;

Class SiteController extends Controllers
{
    public function index()
    {
        $data = collect([
            [
                [ "id"  =>  1 , "name"  =>  "Sanjay" , "email"  =>  "sanjay@gmail.com" ],
                [ "id"  =>  2 , "name"  =>  "Vijay" , "email"  =>  "vijay@gmail.com" ],
                [ "id"  =>  1 , "name"  =>  "Sanjay" , "email"  =>  "sanjay@gmail.com" ],
                [ "id"  =>  3 , "name"  =>  "Ashish" , "email"  =>  "ashish@gmail.com" ],
                [ "id"  =>  3 , "name"  =>  "Ashish" , "email"  =>  "ashish@gmail.com" ]
            ],
            [
                [ "id"  =>  1 , "name"  =>  "Sanjay" , "email"  =>  "sanjay@gmail.com" ],
                [ "id"  =>  2 , "name"  =>  "Vijay" , "email"  =>  "vijay@gmail.com" ],
                [ "id"  =>  2 , "name"  =>  "Vijay" , "email"  =>  "vijay@gmail.com" ]
            ]
        ]);

        $data  =  $data-> map( function ($array) {
            return  collect($array)-> unique( 'id' ) -> all();
        });
        dd($data);
    }
}

输出

当我们执行这个代码片段时,我们会得到这样的东西——
get-unique-values-from-laravel-8-collection-tutorial.webp

0

评论区