循环取一个随机数,请问哪种方式更好些? $xuyao = rand(1,4);//第二种方式我认为这个好 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 rand()方法足够了,嫑重新发明轮子。 include 'check_speed.php';function f1() { $a = array(1,2,3,4); $a = array_merge($a, $a, $a, $a, $a); shuffle($a); return join('', array_slice($a, -18));}function f2() { $r = ''; for($i=0; $i<18; $i++) $r .= rand(1, 4); return $r;}check_speed(50000, 'f2');check_speed(50000, 'f1');50000次的平均值f2时间: 9 微秒内存: 768f1时间: 8 微秒内存: 448显然 f1 的效率要高于 f2 $arr = array(); for ($i=0; $i < 18; $i++) { $arr[$i] = rand(1,4); } 简洁明了 用mt_rand(1,4),比rand的速度要快 PHP websocket与C服务端通信的问题 求救语句哪里出错了 求解变量的执行方式 修改linux中ftp的密码, 在数组的方括号里不能使用计算表达式吗 求助正则表达式 关于新建一个窗口的问题 把ip最后一位数字替换成星号 session传递对象的问题 为什么用@压制不了empty()抛出的错误? php+mysql可以处理亿级的数据吗? phpmailer发送邮箱不成功
$a = array(1,2,3,4);
$a = array_merge($a, $a, $a, $a, $a);
shuffle($a);
return join('', array_slice($a, -18));
}
function f2() {
$r = '';
for($i=0; $i<18; $i++) $r .= rand(1, 4);
return $r;
}
check_speed(50000, 'f2');
check_speed(50000, 'f1');
50000次的平均值f2
时间: 9 微秒
内存: 768f1
时间: 8 微秒
内存: 448显然 f1 的效率要高于 f2
for ($i=0; $i < 18; $i++) {
$arr[$i] = rand(1,4);
}
简洁明了