2013-12-10 38 views
0

我一直在寻找并尝试几个小时,我想在我的变量中查找重复项,然后打印数字,然后消除重复项,只留下原始数字。使用array_unique删除重复并打印结果

这是我一直想:

$priceminpps = get_field('price_minpps'); 
$pricemaxpps = get_field('price_maxpps'); 
$priceminunit = get_field('price_minunit'); 
$pricemaxunit = get_field('price_maxunit'); 

$find_duplicates = array($priceminpps, $pricemaxpps, $priceminunit, $pricemaxunit,); 

$result = array_unique($find_duplicates); 
print($result); 

但它不工作,谁能帮助?

+2

你的意思'的print_r($结果)'? –

回答

0

仔细检查array_unique是否没有做它应该做的。

如果是真的array_unqiue()我会生成一个新的数组,并在这个新的数组中推送唯一的数字。您可以检查它是否已经在in_array(number-to-check, $array)的新阵列中。如果in_array()未返回true,则将其添加到unique-number-array。

例子:

$result = array(); 
foreach ($find_duplicates as $number) { 
    if(!in_array($number, $result)) { 
     $result[] = $number; 
    } 
} 
+0

我是否像这样传递数组中的变量:array =($ var1,$ var2)?此外,我如何回应这一点,每次我回声它输出一个错误。 – user3025420

+0

如果你想添加一些东西到现有的数组中,你可以使用一个函数a.e. array_push()或者或者(就像我上面所做的那样)“$ array [] = $ number”。空括号[]指示PHP在数组中创建/使用新的索引,因为我们没有指定索引。 如果你想看到数组的结构/内容,我会使用dump($ array),因为echo()只会显示“Array”作为输出。 – JustAPirate