Go to the documentation of this file.00001 <?php
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00017 final class MtRandomSource extends Singleton implements RandomSource
00018 {
00022 public static function me()
00023 {
00024 return Singleton::getInstance(__CLASS__);
00025 }
00026
00027 public function getBytes($numberOfBytes)
00028 {
00029 Assert::isPositiveInteger($numberOfBytes);
00030
00031 $bytes = null;
00032 for ($i = 0; $i < $numberOfBytes; $i += 4) {
00033 $bytes .= pack('L', mt_rand());
00034 }
00035
00036 return substr($bytes, 0, $numberOfBytes);
00037 }
00038 }
00039 ?>