【问题标题】:Remove duplicates using array_unique and printing the result使用 array_unique 删除重复项并打印结果
【发布时间】:2013-12-10 18:54:06
【问题描述】:

我已经搜索和尝试了几个小时,我想在我的变量中寻找重复的打印数字,然后消除重复,只留下原始数字。

这是我一直在尝试的:

$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);

但它不起作用,有人可以帮忙吗?

【问题讨论】:

  • 你的意思是print_r($result) 吗?

标签: php function duplicates array-unique


【解决方案1】:

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

如果真的是array_unqiue(),我会生成一个新数组并将唯一数字推送到这个新数组中。您可以使用in_array(number-to-check, $array) 检查它是否已经在新数组中。

如果 in_array() 不返回 true,请将其添加到唯一编号数组中。

例子:

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

【讨论】:

  • 我是否像这样传递数组中的变量:array = ($var1,$var2)?另外,我如何回显这个,每次回显它都会输出一个错误。
  • 如果你想向现有数组添加一些东西,你可以使用一个函数,a.e. array_push() 或者或者只是(就像我上面所做的那样)“$array[] = $number”。空括号 [] 告诉 PHP 在数组中创建/使用新索引,因为我们没有指定索引。如果您想查看数组的结构/内容,我会使用 dump($array),因为 echo() 只会将“Array”显示为输出。
猜你喜欢
  • 1970-01-01
  • 2017-03-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-30
  • 1970-01-01
相关资源
最近更新 更多