Şimdi aşağıda $liste adında dizinim var ben bunu rastgele döndürüp her döngüde çıkan sonucu sildirip işleme soktum yani
1. döngüne rastgele ilk Armut çıktıysa ben bunun anahtarını sildirip döngüye devam ettiriyorum.
2.döngüde $liste = array("Elma","Kiraz","Portakal"); şeklinde dönüyor.2.döngüde Elma çıktıysa
3. döngü array("Kiraz","Portakal"); şeklinde devam ediyor..
Bu şekilde istediğimi sadece for döngüsünde elde ediyorum...for döngü içinde echo Sec($liste) şeklinde
ama ben bu sonucu bir değişkene aktarınca bana sadece son dönen diziyi veriyor... for döngüsü dışında dönen dizileri nasıl alırım?
function Sec() te birtakım değişiklik yapılmalı ama ne yaptımsa başaramadım
<?php
$liste = array("Elma","Armut","Kiraz","Portakal");
// diziden verilen değeri içeren anahtarları siler.
function arrDel(&$arr, $val){
while (($key = array_search($val, $arr)) !== false)
{
unset($arr[$key]);
}
}
function Sec(&$liste){
if(count($liste) == 0)
return false;
$sonuc = $liste[array_rand($liste)];
arrDel($liste, $sonuc);
return $sonuc;
}
for($i=0;$i<=4;$i++){
//for içinde listeleniyor fakat burdaki listeyi başka değişkene aktarsamda listeyi alamıyorum
echo $sonuc = Sec($liste);
}
echo "<br /><br /><br /><br />";
echo "Döngü Dışında Almak isteyince Alamıyorum".$sonuc;
?>