Code from a while back
I must have written this about five years ago, when I wanted to break away from using only Dreamweaver behaviours to produce the clever stuff in PHP.
With our new content management system, I've discovered that I can throw in snippets of PHP code that will execute. The best of both worlds, it would seem to me!
So below you will find six numbers to play in a Lotto 6-49 game (like the UK's National Lottery).
Tonight's winning numbers are....
Ball Number 1 is 14.
Ball Number 2 is 10.
Ball Number 3 is 8.
Ball Number 4 is 13.
Ball Number 5 is 2.
Ball Number 6 is 15.
Everytime you visit this page, you will have a different set of numbers. Don't believe me? Click here to refresh the page.
The code that generates this looks like this (with comments to help):
<?php
/* initialise array */
$lottoNum = array ();
/* fill the array from 1 to 49, emulating the filling of the bin */
for($counter = 1; $counter <=49; $counter++)
{
array_push($lottoNum,$counter);
}
/* First, we shuffle. Take the new first number and then */
/* take it out of the array with array_shift set the bin */
/* spinning again with the shuffle function. */
/* */
/* Ultimately, we become millionaires. I get 10% of all */
/* winnings if you use this code and win. ;-) */
for($index =1; $index <= 6; $index++)
{
/* set the bin rolling with the shuffle function */
shuffle($lottoNum);
print("<p>Lotto Number <strong>$index</strong> is <strong>$lottoNum[0]</strong>.</p>\n");
array_shift($lottoNum);
}
?>
My friend Greg and I were examining the entertaining conversations regarding the shuffle() function at http://www.php.net/manual/en/function.shuffle.php and Greg pointed out that my bit of code here doesn't quite satisfy the Fisher Yates shuffle requirements, but what did they know? Neither of them ever won the lottery, did they?
27 June 2008
I thought I'd better do a version for the Euro Lottery:
Euro Number 1 is 37.
Euro Number 2 is 22.
Euro Number 3 is 26.
Euro Number 4 is 50.
Euro Number 5 is 16.
Euro Star 1 is 1.
Euro Star 2 is 8.

Numbers might not change
Richard Sheppard Says:A friend just pointed out while I had the web applications caching turned on the numbers didn't change. For the time being, I've disabled the caching, just so I can show off.
- reply
»Post new comment