在页面生成一个(1-10)的随机数,每次在页面生成的随机数都不能重复。直到10个数都出现完例如 9 2 6 3...应该怎么做

解决方案 »

  1.   

    $ar = array(0,1,2,3,4,5,6,7,8,9);
    $result = '';
    for($i = 0; $i < 10; $i ++) {
       $rand = rand(0, count($ar) - 1);
       $result .= $ar[$rand] + ' ';
       unset($ar[$rand]);
       $ar = array_values($ar);
    }
    echo $result;
      

  2.   

    //唉,老是忘记PHP有个打乱数组的函数  shuffle()
    $ar = array(0,1,2,3,4,5,6,7,8,9);
    shuffle($ar);
    echo implode($ar, '&nbsp');
      

  3.   

    LS的那个函数就可以实现$ar = array(0,1,2,3,4,5,6,7,8,9);
    shuffle($ar);
    echo implode($ar, '&nbsp');
      

  4.   


    session_start();
    if (isset($_SESSION['rand'])) echo array_pop($_SESSION['rand']);
    else {
       $_SESSION['rand'] = array(0,1,2,3,4,5,6,7,8,9);
       shuffle($_SESSION['rand']);
       echo array_pop($_SESSION['rand']);
    }
      

  5.   

    这个就只能在服务端保存数据了,session或文件或数据库都行
      

  6.   

    如果觉得SESSION消耗资源,存到COOKIE也行