【问题标题】:PHP array_unique do not work for my arrayPHP array_unique 不适用于我的数组
【发布时间】:2013-12-15 08:20:46
【问题描述】:

我有一个函数可以返回这样的数组:

Array
(
[0] => Array
    (
        [0] => #fff4f4;
        [1] => fff4f4
    )

[1] => Array
    (
        [0] => #ffffea;
        [1] => ffffea
    )

[2] => Array
    (
        [0] => #ffc;
        [1] => ffc
    )

[3] => Array
    (
        [0] => #ccc;
        [1] => ccc
    )

[4] => Array
    (
        [0] => #eee;
        [1] => eee
    )

[5] => Array
    (
        [0] => #fffff0;
        [1] => fffff0
    )

[6] => Array
    (
        [0] => #ffd;
        [1] => ffd
    )

[7] => Array
    (
        [0] => #ddd;
        [1] => ddd
    )

[8] => Array
    (
        [0] => #ccc;
        [1] => ccc
 [...]

我需要有一个这样的数组,但只有唯一的值。 我试过了:

$result = array_unique($rescss);

bur 连续唯一的整个数组,那我试过了

$result = array_unique($rescss[]);

但不起作用。

我怎样才能拥有这样但只有唯一值的新数组

提前致谢

【问题讨论】:

标签: php arrays array-unique


【解决方案1】:

只需循环数组并使用哈希数组标记值已存在,如下所示:

$unique = array ();

$hash = array ();

foreach ( $rescss as $ele )
{
    //seemed $ele [0] could be the primary key
    $eleKey = $ele [0];

    if (isset ( $hash [$eleKey] ))
        continue;

    $unique [] = $ele;

    $hash [$eleKey] = 1;
}

【讨论】:

    猜你喜欢
    • 2011-07-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-31
    • 1970-01-01
    • 1970-01-01
    • 2016-06-29
    相关资源
    最近更新 更多