00001 <?php
00002 abstract class SRandom {
00003 public static function binary($bytes) {
00004 $urandom = fopen('/dev/urandom', 'r');
00005 $str = fread($urandom, $bytes);
00006 fclose($urandom);
00007 return $str;
00008 }
00009 public static function string($characters) {
00010 $str = '';
00011 for($i=0;$i<$characters;$i++) {
00012 $str .= chr(rand(32, 126));
00013 }
00014 return $str;
00015 }
00016 public static function hex($characters) {
00017 $str = bin2hex(self::binary(ceil($characters / 2)));
00018 if($characters % 2 != 0) {
00019 $str = substr($str, 0, -1);
00020 }
00021 return $str;
00022 }
00023 }
00024 ?>