PHP bir diziden yinelenen değerleri kaldırmak için nasıl

8 Cevap php

Nasıl yinelenen değerleri PHP bir diziden kaldırabilirim?

8 Cevap

Kullan array_unique().

Örnek:

$array = array(1, 2, 2, 3);
$array = array_unique($array); // Array is now (1, 2, 3)
$array = array("Ram","Thiru","Ram","Thiraviya");
$array = array_unique($array);

Çıktı:

"Ram", "Thiru", "Thiraviya"

sometimes array_unique() is not the way, if you want get unique AND duplicated items...

$unique=array("","A1","","A2","","A1","");
$duplicated=array();

foreach($unique as $k=>$v) {

if( ($kt=array_search($v,$unique))!==false and $k!=$kt )
 { unset($unique[$kt]);  $duplicated[]=$v; }

}

sort($unique); // optional
sort($duplicated); // optional

sonuçları üzerinde

array ( 0 => '', 1 => 'A1', 2 => 'A2', ) /* $unique */

array ( 0 => '', 1 => '', 2 => '', 3 => 'A1', ) /* $duplicated */

explode(",", implode(",", array_unique(explode(",", $YOUR_ARRAY))));

Bu anahtar derneklerin dikkat çekmek ve :-) çıkan yeni dizi için anahtarları serialize olacak

Ben herhangi bir işlevi kullanmadan bu yaptım.

$arr = array("1", "2", "3", "4", "5", "4", "2", "1");

$len = count($arr);
for ($i = 0; $i < $len; $i++) {
  $temp = $arr[$i];
  $j = $i;
  for ($k = 0; $k < $len; $k++) {
    if ($k != $j) {
      if ($temp == $arr[$k]) {
        echo $temp."<br>";
        $arr[$k]=" ";
      }
    }
  }
}

for ($i = 0; $i < $len; $i++) {
  echo $arr[$i] . " <br><br>";
}

Çıktı array_unique() giriş dizisi aynı tuşa sahip olacaktır. Aklınızda tutmanız gerektiğini.

İşte bunu yapmak için harika bir yoldur. Emin çıkış tekrar bir dizi yapmak isteyebilirsiniz. Şimdi sadece son eşsiz bir değer gösteren ediyoruz.

Bu deneyin:

$arrDuplicate = array ("","",1,3,"",5);

foreach (array_unique($arrDuplicate) as $v){
  if($v != "") { $arrRemoved[] = $v; }
}
print_r ($arrRemoved);

deneyin bu kısa ve tatlı kod -

$array = array (1,4,2,1,7,4,9,7,5,9);
$unique = array();

foreach($array as $v){
  isset($k[$v]) || ($k[$v]=1) && $unique[] = $v;
  }

var_dump($unique);

Output -

array(6) {
  [0]=>
  int(1)
  [1]=>
  int(4)
  [2]=>
  int(2)
  [3]=>
  int(7)
  [4]=>
  int(9)
  [5]=>
  int(5)
}