chenyuanqi

2369 经验值

在 laravel 中,使用 collect 处理数组是一件非常棒的事情。
废话少说!直接看代码,下面是一段简单的根据字段 id 去除重复记录的处理

$arr = [
        ['id' => 1, 'name' => 'lily'],
        ['id' => 2, 'name' => 'lucy'],
        ['id' => 1, 'name' => 'lily', 'email' => '[email protected]'],
        ['id' => 3, 'name' => 'hanmeimei'],
        ['id' => 4, 'name' => 'xiaocun'],
        ['id' => 5, 'name' => 'donggua']
];
$result = collect($arr)->unique('id')->take(3)->toArray();
/*
 处理的结果是
   [
     0 => [
       "id" => 1,
       "name" => "lily",
     ],
     1 => [
       "id" => 2,
       "name" => "lucy",
     ],
     3 => [
       "id" => 3,
       "name" => "hanmeimei",
     ],
   ]
*/

然而,现实开发中通常遇到的数组并不都那么友好,当数组变成这样了:

$arr = [
        ['_source' =>  ['id' => 1, 'name' => 'lily'], '_id' => 1],
        ['_source' =>  ['id' => 2, 'name' => 'lucy'], '_id' => 2],
        ['_source' =>  ['id' => 1, 'name' => 'lily', 'email' => '[email protected]'], '_id' => '1game'],
        ['_source' =>  ['id' => 3, 'name' => 'hanmeimei'], '_id' => 3],
        ['_source' =>  ['id' => 4, 'name' => 'xiaocun'], '_id' => '4app'],
        ['_source' =>  ['id' => 5, 'name' => 'donggua'], '_id' => 'app5']
 ];

那么,又该如何根据字段 id 去重呢?
使用 foreach 记录 id 的出现的确可以解决,但是在 collection 的使用上犯愁了。所以,请教各位使用 collection 如何对这类升级的数组去重呢?

如果考虑性能的话,可以使用 Phalcon,精炼老干非常棒

其实 es6 很早就想学了,但是感觉 PHP 有好多更想知道的东西,比如 PHPUnit 。。。

我想问的是,教程里快速切换桌面程序使用的是什么软件?

认真看完会发现有些错漏,不过写得挺好,赞一个!