通过重复比较每个结果

时间:2015-02-10 04:43:54

标签: php

这是一个艰难的。我完全被难住了。

基本上我有这个:

    foreach ($getSubsSecondList as $subCatDisplayExtendTwoSecondList){

    $itemUse = $subCatDisplayExtendTwoSecondList[dir_sub_categories];

    if (!empty($itemUse)) {
    if (isset($itemUse)) {
    foreach (array_unique($getSubsSecondListAgain) as $subCatDisplayExtendTwoSecondListAgain){
echo "<pre>";
var_dump($itemUse);
echo "</pre><br>";
$nameStore = $subCatDisplayExtendTwoSecondListAgain[name]; 

    }
    }
    }
    }

对于我的$itemUse var_dump,我的输出为

  

string(16)&#34; Health&amp;健身&#34;

     

string(6)&#34; Sports&#34;

     

string(17)&#34; Sports - Training&#34;

     

string(19)&#34; Sports&amp;娱乐与#34;

正是我正在寻找的东西。问题是我有Sports Store #1&#34;健康与健身&#34;并且在&#34; Sports&#34;类别。 Sports Store #1被回复两次。有没有办法进一步解决这个问题,以便如果Sports Store #1多次被发现它会通过它?这里的实际输出是

Sports Store # 0
Sports Store # 1 
Sports Store # 1

我正在寻找的只有一个例子:

Sports Store # 0
Sports Store # 1 

1 个答案:

答案 0 :(得分:0)

将输出的内容存储到数组中,如果要输出的下一个内容是在数组中,请不要将其打印出来并转到下一个元素。

 $outputted = array();

 foreach ($getSubsSecondList as $subCatDisplayExtendTwoSecondList){

    $itemUse = $subCatDisplayExtendTwoSecondList[dir_sub_categories];

    if (!empty($itemUse)) {
      if (isset($itemUse)) {
        foreach (array_unique($getSubsSecondListAgain) as $subCatDisplayExtendTwoSecondListAgain){
          if ( in_array($subCatDisplayExtendTwoSecondListAgain[name], $outputted) ){
             continue;
          }
          echo "<pre>";
          var_dump($itemUse);
          echo "</pre><br>";

          echo $subCatDisplayExtendTwoSecondListAgain[name]; 
          $outputted[] = $subCatDisplayExtendTwoSecondListAgain[name];

        }
     }
    }
   }