Türkiye'nin En Eski Webmaster Forumu İyinet'e Hoşgeldiniz!

Kayıt Ol

Foreach içindeki veriyi dışarıya almak

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
PHP:
foreach($say as $key => $sayi)
{
if($sayi > 2)

$gelen1 = $key;

}
echo $gelen1;


Yukarıdaki foreach fonksiyonu içindeki $gelen1 değerini dışarıya .= haricinde nasıl alabilirim ?
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Bu koda bir function yazarak çözdüm sorunu.
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Başka bir konu açmadan burdan devam edeyim.

PHP:
<?php 
    $dizi = array('armut','elma','portakal','karpuz','kivi','ananas','mandalina','portakal','karpuz','muz','uzum','muz'); 
    $count = array_count_values($dizi); 
    $fazlalik = array(); 
    foreach($count as $key => $value) 
    { 
        if($value >= 2) 
        { 
            $fazlalik[] = $key;  
        } 
    } 
     
    print_r($fazlalik); 
?>

fazlalik dizisi içinde 100 tane ayrı kelime var fakat ben bunun sadece 10 tanesini almak istiyorum bunu ne şekilde yapabilirim ? ve dizi içindekileri değişkene nasıl aktarabilirim ?

Buradaki amaç; değişkenden gelen verilerin yukarıdaki kodun başlangıç kısmındaki gibi bir diziye gönderilmesi, tekrar eden veriler ayrılıp başka bir dizi içine gönderildikten sonra çıkarılıp tekrar ilgili değişkenlere atanması. Bu arada yukarıda sorduğum şekilde 100 tane tekrar eden veri varsa sadece 10 tanesini almak istiyorum.
 

Invictus

0
Onaylı Üye
Üye
Katılım
4 Şubat 2010
Mesajlar
328
Açılan Konu
5
Tepki puanı
8
Konum
istanbul
PHP:
$x = count($fazlalik);
shuffle($fazlalik);
if($x > 10) {
    for($i=0;$i<$x-10;$i++) {
        array_pop($fazlalik);
    }
}
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Invictus teşekkürler güzel bir fonksiyon verdin.Fakat $x toplam kelime 50 veya 100 olduğunda yine çok fazla kelime geliyor. $x kaç olursa olsun sadece 10 tanesini almak istiyorum.
 

Angelo

0
Onaylı Üye
Üye
Katılım
13 Aralık 2004
Mesajlar
9,603
Açılan Konu
164
Tepki puanı
106
Konum
AZ
www.php.net/array_slice
Array'i 10 luk bir dilime kesebilirsin.
For'la dondurup sayac 10 a ulastiginda break; ile cikabilirsin.
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Tamamdır for döngüsünde değişiklik işimi çözdü teşekkürler tekrardan. Aynı anda yazmışız Angelo sağolasın senin dediğine de bakayım.
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Bu arada eğer tekrar eden kelime 2 veya 3 karakter ise bunu sil şeklinde nasıl yapabiliriz ? Bu fonksiyon büyüdükçe kafam iyice karışıyor :)
 

Invictus

0
Onaylı Üye
Üye
Katılım
4 Şubat 2010
Mesajlar
328
Açılan Konu
5
Tepki puanı
8
Konum
istanbul
Invictus teşekkürler güzel bir fonksiyon verdin.Fakat $x toplam kelime 50 veya 100 olduğunda yine çok fazla kelime geliyor. $x kaç olursa olsun sadece 10 tanesini almak istiyorum.

zaten kodu incelersen toplam kelime sayısı 10dan büyük olduğunda 10 tane veriyor. sayı önemli değil yani, isterse 1 milyon olsun isterse 11 olsun sana hep 10 tane vericek
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Bende bazı verilerde daha fazla gösteriyordu $x-10 kısmını 10 yaptım sadece.
 

Invictus

0
Onaylı Üye
Üye
Katılım
4 Şubat 2010
Mesajlar
328
Açılan Konu
5
Tepki puanı
8
Konum
istanbul
$x-10 kısmını 10 yaparsan 100 tane veri varsa 10 tane siler, 90 tanesi $fazlalik dizisinde kalır.
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Belkide function içine koyup bazı yerlere değişken atadığım için sonuç değişmiş olabilir.Çünkü şu anda sorunsuz çalışıyor.
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Hala tekrar eden 2 veya 3 karakterli kelimeleri nasıl sileceğimi bulamadım. Bunun için nasıl bir parametre kullanabilirim. İlk başta tekrar eden kelimelerin ayrılması kısmında veya diğer kısımlarda yapılması gerekiyor fakat nasıl ? Sadece mantık yönünden yardım istiyorum kod gerekli değil :)
 

OsmanAtabey

0
Onaylı Üye
Üye
Katılım
26 Mart 2005
Mesajlar
922
Açılan Konu
52
Tepki puanı
4
Herneyse bu sefer function sorunu çıktı. Bir değişken functiondan veriyi geç aldığı için diğerlerine yetişemiyor. Bu sorunu çözüp daha sonra dönerim strlen kısmına ...
 
Üst