$xuyao = rand(1,4);//第二种方式我认为这个好

解决方案 »

  1.   

    rand()方法足够了,嫑重新发明轮子。
      

  2.   

    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
      

  3.   

    $arr = array();
    for ($i=0; $i < 18; $i++) { 
    $arr[$i] = rand(1,4);
    }
      简洁明了
      

  4.   

    用mt_rand(1,4),比rand的速度要快