| <?php |
| function randomSeed (& $companyinfoArray) { |
| $max = 0; |
| $arrayCount = count($companyinfoArray); |
| |
| //This For loop creates the catalog that we Rand into and finds our total wieght ($max) |
| foreach ($companyinfoArray as $key => $value) |
| { |
| $weight = round($value->speed * $value->ranking); |
| $max += $weight; |
| $catalog[$key]= $weight; |
| } |
| |
| //This loop continues till there are no items left |
| while (count($catalog)) |
| { |
| $count = 0; |
| $rand = rand (1, $max); |
| // This Loop grabs the item and compares the rand number to its value + count |
| foreach ($catalog as $key => $value) |
| { |
| if ( ($value + $count) >= $rand) // Going in here means we found the right number |
| { |
| unset ($catalog[$key]); // Unset removes the entry from the array |
| $randomized[] = $key; // Add the key of the array to our ordered array |
| $max -= $value; // Remove the weight of the item from $max |
| break; |
| } |
| else |
| { |
| $count += $value; // Value is too low increase count |
| } |
| } |
| } |
| //$randomized is the randomly ordered order of display |
| return $randomized; |
| } |
| |
| |
| class companyInfo { |
| var $companyName; |
| var $companyLogo; |
| var $companyBlurb; |
| var $version; |
| var $projects; |
| var $linkTo; |
| var $speed; |
| var $ranking; |
| |
| function companyInfo ($_companyName, $_companyLogo, $_version, $_projects, $_companyBlurb, $_linkTo, $_speed, $_ranking = "1") { |
| $this->companyName = $_companyName; |
| $this->companyLogo = $_companyLogo; |
| $this->version = $_version; |
| $this->companyBlurb = $_companyBlurb; |
| $this->projects = $_projects; |
| $this->linkTo = $_linkTo; |
| $this->speed = $_speed; |
| $this->ranking = $_ranking; |
| } |
| } |
| |
| ?> |