欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

关于分批读取mysql数据存储到数组的有关问题

程序员文章站 2022-04-19 12:02:29
...
关于分批读取mysql数据存储到数组的问题
关于分批读取mysql数据存储到数组的问题

想把每次读取的记录都存储到数组里,大家都怎么实现的?我的代码始终实现不了,每次都是把最后一次从数据库中读出来的数据存到数组,前面的全被清空.有空的朋友帮帮忙提供下思路,想不明白了,先行谢谢了!~~~
PHP code

    $returnarray=array();
    $str=''; 
    $k_group=2;//做2组实验
    $k_num=1   ;   //每一组实验随机取一条记录
    $rr=array();
    while($k_group) {
      if ($k_num>0){//循环取出100条记录传入数组$returnarray,然后将最大,最小和中间值传出做为标本
         //sql为了产生一条随机数据,有点笨,先这样用吧.
       $sqlstr=" 
       SELECT * FROM hmk AS t1 JOIN (SELECT ROUND(rand() * ((SELECT MAX(hmkid) FROM hmk)-(SELECT min(hmkid) FROM hmk))+(SELECT MIN(hmkid) FROM hmk)) AS id) AS t2 WHERE t1.hmkid >= t2.id ORDER BY t1.hmkid LIMIT 1 ";
       $result=$db->query($sqlstr) ;
        //if($result) echo '入库成功1312312!';else echo 'sorry! try again please!';
         while($row=mysqli_fetch_array($result,MYSQLI_ASSOC)) {
           $returnarray[]= $row; //[color=#FF0000]这里的$returnarray在下一组实验时就会被清空,怎么把数据保存下来?[/color]           }
         $k_num--;   
             
        $m=$returnarray;
        //下面这段代码是从上面返回的数据中    取前1-6个字段,并把出现次数写入RR数组,朋友们可以先不管他
        foreach ($m as $key=>$value) {
           $i=0;
           foreach ($value as $k) { 
           if($i0) {
            if(array_key_exists($k,$rr)){
                     
                  $rr[$k]++; 
                     //echo '$k='.$k ;
                     }
                 
                 else {
                    $rr[$k]=1;
                 }   
                 }
                 $i++; } 
              }  
            }
            
            $k_group--;
        }
            
        print_r($returnarray);   ;
        
        print_r($m);//creat_array2table($m) ;



------解决方案--------------------
试了一下,不会回收.
关于分批读取mysql数据存储到数组的有关问题

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

相关文章

相关视频