markvaughn2006 Posted October 21, 2009 Share Posted October 21, 2009 On the rand() function is there a way to have it pick a random number between say... 1000-1025 AND 2000-2025 AND 3000-3025, etc... so possible outcomes could be 2014, 1023, 1005, 3002, etc... all from this one rand() I know thats weird , just have a specific reason for wanting to do this... Thanks in advance!! Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/ Share on other sites More sharing options...
salathe Posted October 21, 2009 Share Posted October 21, 2009 From one call to rand(), no. Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/#findComment-941509 Share on other sites More sharing options...
Daniel0 Posted October 21, 2009 Share Posted October 21, 2009 I suppose you could always do like this: $rand = array(rand(1000,1025), rand(2000,2025), rand(3000,3025)); $num = $rand[rand(0,2)]; Edit: Or like this: $first = rand(1,3) * 1000; $num = rand($first, $first + 25); Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/#findComment-941513 Share on other sites More sharing options...
Adam Posted October 21, 2009 Share Posted October 21, 2009 As salathe said there isn't with a single call to rand(), but you could use something like: $ranges = array( 0 => array(1000, 1025), 1 => array(2000, 2025), 2 => array(3000, 3025) ); $n = array_rand($ranges); echo rand($ranges[$n][0], $ranges[$n][1]); Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/#findComment-941521 Share on other sites More sharing options...
Psycho Posted October 21, 2009 Share Posted October 21, 2009 I'll throw in another solution: $values = array_merge(range(1000, 1025), range(2000, 2025), range(3000, 3025)); $rand_value = $values[array_rand($values)]; EDIT: MrAdam went with a similar solution, but mine picks a single random value out of the entire list instead of first selecting one of three lists and then selecting a value out of that. Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/#findComment-941525 Share on other sites More sharing options...
markvaughn2006 Posted October 21, 2009 Author Share Posted October 21, 2009 cool thanks, that'll work!! Link to comment https://forums.phpfreaks.com/topic/178525-solved-rand-1000-10252000202530003025/#findComment-941604 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.