[ Golja @ 30.07.2013. 15:46 ] @
hocu da dobijem neki random broj koji se ne nalazi u nekom generisanom nizu

Code:

function myrand($first,$last,$arr) {
  $rand99=rand($first,$last);
  if (in_array($rand99,$izuzetak)) {
    myrand($f2,$l2,$izuzetak) ;
  } else {
    return $rand99; 
  }
}


$arr=array(3,5,7);
$myradom_number=myrand(1,10,$arr);




sve je ok kada je iz prve random broj, inace u svakom sledecem prolazu se otvara funkcija i na return ne vraca broj nego se zatvara i prelazi na prethodnu instancu funckije

izgleda da sam malo zaboravio kako izgleda kad funkcija poziva smau sebe, jer ne koristi se bas cesto..
[ Radovan__III @ 30.07.2013. 17:24 ] @
Code:
function myrand($first,$last,$arr) {
  $rand99=rand($first,$last);
  if (in_array($rand99,$izuzetak)) {
    return myrand($f2,$l2,$izuzetak) ;
  } else {
    return $rand99; 
  }
}


$arr=array(3,5,7);
$myradom_number=myrand(1,10,$arr);


ovo bi trebalo da radi :)
[ Nikola Poša @ 30.07.2013. 20:11 ] @
Code:
function rand_exclude($min, $max, array $exclude = array()) {
    $num = rand($min, $max);
    
    $numOfTries = 0;
    $excludeCount = count($exclude);
    while (in_array($num, $exclude)) {
        $num = rand($min, $max);
        if (++$numOfTries >= $excludeCount) {
            break;
        }
    }
    
    return $num;
}