• 28-09-2010, 17:18:50
    #1
    Kimlik doğrulama veya yönetimden onay bekliyor.
    Merhaba,

    Sql'den array olarak 11 tane veri çekiyorum. Bu verilerden aynı id'ye sahip olanları array_unique ile alıyorum.

    Bu aldığım verilerden de elde kalanların 3 tanesini for ile kullanmam gerekiyor.

    Ama array_unique sildiği array'lardan oluşturduğu yeni array'da sıralama yapmadığı için bu verileri kullanamıyorum.

    sql'den gelen array
    Array ( [0] => 100 [1] => 101 [2] => 101 [3] => 101 [4] => 102 [5] => 102 [6] => 102 [7] => 103 [8] => 104 [9] => 104 [10] => 104 )

    array_unique sonucu
    Array ( [0] => 100 [1] => 101 [4] => 102 [6] => 102 [7] => 103 [8] => 104 )

    for döngüm
    for($i=0,$x=3;$i<$x;$i++) {
    echo $unique[$i];
    }
    çıktı
    100, 101

    102 yani array_unique ile gelen 3. veriyi alamıyorum çünkü array numarası tutmuyor.

    Bunu nasıl çözebilirim?
  • 28-09-2010, 17:36:31
    #2
    Kimlik doğrulama veya yönetimden onay bekliyor.
    akLima iLk geLen biLmiorum ne kadar dogru ne kadar yanLis oLur Sadece bi Fikir;

    foreach($eskiarray as $value )
    {
    $yenidizi[]=$value;
    }

    Sol kulagi sag elle tutmak gibi ama iLk nedense bu geLDi akLima
  • 28-09-2010, 17:45:07
    #3
    rugzO adlı üyeden alıntı: mesajı görüntüle
    Merhaba,

    Sql'den array olarak 11 tane veri çekiyorum. Bu verilerden aynı id'ye sahip olanları array_unique ile alıyorum.

    Bu aldığım verilerden de elde kalanların 3 tanesini for ile kullanmam gerekiyor.

    Ama array_unique sildiği array'lardan oluşturduğu yeni array'da sıralama yapmadığı için bu verileri kullanamıyorum.

    sql'den gelen array
    Array ( [0] => 100 [1] => 101 [2] => 101 [3] => 101 [4] => 102 [5] => 102 [6] => 102 [7] => 103 [8] => 104 [9] => 104 [10] => 104 )

    array_unique sonucu
    Array ( [0] => 100 [1] => 101 [4] => 102 [6] => 102 [7] => 103 [8] => 104 )

    for döngüm
    for($i=0,$x=3;$i<$x;$i++) {
    echo $unique[$i];
    }
    çıktı
    100, 101

    102 yani array_unique ile gelen 3. veriyi alamıyorum çünkü array numarası tutmuyor.

    Bunu nasıl çözebilirim?
    for yerine foreach kullanabilirsiniz.
    foreach ( $unique AS $key => $value )
    {
        echo $key." => ".$value."<br />";
    }
  • 28-09-2010, 17:58:39
    #4
    Romansanta adlı üyeden alıntı: mesajı görüntüle
    akLima iLk geLen biLmiorum ne kadar dogru ne kadar yanLis oLur Sadece bi Fikir;

    foreach($eskiarray as $value )
    {
    $yenidizi[]=$value;
    }

    Sol kulagi sag elle tutmak gibi ama iLk nedense bu geLDi akLima

    Cycl0ne adlı üyeden alıntı: mesajı görüntüle
    for yerine foreach kullanabilirsiniz.
    foreach ( $unique AS $key => $value )
    {
        echo $key." => ".$value."<br />";
    }

    Cevaplar için saolun.
  • 29-09-2010, 15:20:45
    #5
    Üyeliği durduruldu
    işi sql ilede halledebilirsin

    SELECT DISTINCT xyz FROM tablo
    Seklinde