我有这段代码:
$nr=10;
$teste=$this->vector_teste();
$rezultat=array();
$k=1;
do{
$rand_t=rand(0, count($teste)-1);
$rand=rand(1,2);
if($nr<$rand)$rand=1;
$nr=$nr-$rand;
$chest=new chestionar(get_cod_by_id($teste[$rand_t]));
$cnt_q=$chest->numar_intrebari();
for($i=1;$i<=$rand;$i++){
$rand_q=rand(1, $cnt_q);
$rezultat[$teste[$rand_t]][$i]=$rand_q;
}
$k++;
}while($nr>0);
并且在代码的末尾,数组$ rezultat必须有10个项目,但有时它有9或8 ..如果我很幸运它有10个项目。为什么?我该如何解决这个问题?
答案 0 :(得分:0)
在最糟糕的情况下,你最多可以获得5件物品
$rand=rand(1,2);
if($nr<$rand)$rand=1;
$nr=$nr-$rand;
这段代码随机地将$nr
递减1或2.将其更改为$nr--
以始终有10次迭代。