PHP array_unique() 刪除物件objects重複值方法

4 月 18, 2018 | | 0 comments

array_unique() 使用在物件上

array_unique移除陣列中重複的值

一般情況下array_unique()只對陣列刪除重複值起作用,但只需要在加入SORT_REGULAR這個參數就可以在物件objects上使用
array_unique works with an array of objects using SORT_REGULAR

使用方法

array_unique(陣列, SORT_REGULAR)

範例:

class MyClass {
    public $prop;
}

$foo = new MyClass();
$foo->prop = 'test1';

$bar = $foo;

$bam = new MyClass();
$bam->prop = 'test2';

$test = array($foo, $bar, $bam);

print_r(array_unique($test, SORT_REGULAR));

輸出:

Array (
    [0] => MyClass Object
        (
            [prop] => test1
        )

    [2] => MyClass Object
        (
            [prop] => test2
        )
)

觀看範例展示: http://3v4l.org/VvonH#v529