【php – MySQL RAND()它可以多久使用一次?它使用/ dev / random吗?】教程文章相关的互联网学习教程文章

php – / dev / urandom错误(webhost拒绝权限)【代码】

我正在使用功能:private function random($len) {if (@is_readable('/dev/urandom')) {$f=fopen('/dev/urandom', 'r');$urandom=fread($f, $len);fclose($f);}$return='';for ($i=0;$i<$len;++$i) {if (!isset($urandom)) {if ($i%2==0) mt_srand(time()%2147 * 1000000 + (double)microtime() * 1000000);$rand=48+mt_rand()%64;} else $rand=48+ord($urandom[$i])%64;if ($rand>57)$rand+=7;if ($rand>90)$rand+=6;if ($rand==1...

PHP:如何创建randomDate($startDate,$endDate)函数?【代码】

我已经创建了一个可以正常使用32位日期的功能(可以接受strtotime),但这不是可扩展的.我需要随机生成人的出生日期,所以我必须使用DateTime(并且只有< = 5.2.13,使其更加困难)函数来生成它们.这就是我所拥有的: public static function randomDate($start_date, $end_date, $format = DateTimeHelper::DATE_FORMAT_SQL_DATE) {if($start_date instanceof DateTime) $start_date = $start_date->format(DateTimeHelper::DATE_FOR...

php – session_regenerate_id()vs session_id(randomString)

session_id($randomString)和session_regenerate_id()之间有什么明显的区别?两者似乎都改变了会话ID:session_regenerate_id() will replace the current session id with a new one, and keep the current session information. session_id() is used to get or set the session id for the current session.如果我做对了,session_regenerate_id()会创建一个新的会话文件并复制数据,并带有删除旧文件的选项;而session_id($random...

php – 从/ dev / urandom转换随机值【代码】

正如comments of mt_rand()中提到的那样,安全性很弱,我们应该使用/ dev / urandom.我的问题是,从urandom我得到一个二进制字符串. 如何将此二进制字符串转换为0-9a-zA-Z? 看起来像base_convert()在这里不起作用.解决方法:仅供记录全功能:function randomFromDev($len) {$fp = @fopen('/dev/urandom','rb');$result = '';if ($fp !== FALSE) {$result .= @fread($fp, $len);@fclose($fp);}else{trigger_error('Can not open /dev/u...

php – bin2hex(random_bytes())有多少个字符取决于输入?【代码】

我正在使用以下代码为我的应用生成一个简单的UID:private function _createUid() {$bytes = random_bytes(128);$uid = bin2hex($bytes);return $uid; }通过这样做,_createUid()的结果将是256个字符的字符串.我的问题是,如果在同一台服务器上运行,这个字符串总是256个字符,我知道不同服务器上的一些差异.另外,一个字节是否等于两个字符? 任何帮助都会很棒,谢谢!解决方法:在十六进制中,字节始终表示为2个字符. 字节的十六进制表示...

php – mysql group by table b,inner join table a for random【代码】

这是我的2个表,内部联接事件的id.我想做这件事: 在表b中,有10张专辑,我想随机拿出4张专辑.然后每张专辑选择一张唱片,该唱片是专辑中的随机位置. 这样我将得到4条记录(这4条记录没有重复的id),然后将这4条记录作为内部联接查询,从表a中获取标题. 这里只有很少的记录供测试.事实上,表a中有300,000条记录,表b中有2,000,000条记录. 表a+-----+-------+ | id | title | +-----+-------+ | 1 | a1 | +-----+-------+ | 2 | a2 ...

php – MYSQL RANDOM SELECT UNIQUE ROWS – 排除以前选择的行【代码】

我有一张16K条目的表格我想提取随机的44个条目但我不想再重复相同的条目一次(永远)所以我有一个每用户列表,将已经使用的’ID’保存为表中以逗号分隔的字符串.我使用该列表SELECT … NOT IN(used_IDs) 问题是这个列表变得太大而sql调用因为我相信的大小而失败 关于如何更有用地做到这一点的任何想法?Questions table: +------+-------+-------+ | id | Qtext | Tags | +------+-------+-------+Test table: +------+-------+ | ...

php – MySQL RAND()它可以多久使用一次?它使用/ dev / random吗?【代码】

我有一个几行的表(顶部50),我需要从表中得到随机值我可以做到这一点ORDER BY RAND()限制1主要问题是,当我在5秒钟内获得6k选择时,rand stil’可靠’?如何计算兰特,我可以随着时间推移播种吗? (idk,每5秒钟).解决方法:MySQL伪随机数生成器是完全确定的.文档说:RAND() is not meant to be a perfect random generator. It is a fast way to generate random numbers on demand that is portable between platforms for the same My...

RANDOM - 相关标签