你的需求没有说清楚!
1、图片:name+"空格"+"图片数" 含义不清
2、既然只有25条数据,那么1000条指的是什么?
3、假定1000条记录对应3000个图片,那么用glob函数检查也只需要进行3000次。那个10-20万的倍率是不存在的

解决方案 »

  1.   

    1.文件夹myPic图片
       我已经按照数据库myTable中name字段命名了
       图片数指的是因为条数据(每个name)可能对应1到3张图片
       如数据库myTable中有一条
       数据: name = testPic
       图片文件夹中应存在:  
          testPic1.gif
          testPic2.gif
          testPic3.gif  我有25万条数据.
      但是考虑到服务器的负载能力.
      我想把25万条数据分为几次分别进行关联
      1000是我假设每次1000条数据进行关联
      
      图片是在文件夹中的.
      每条检测--一条数据(一个name)是否
      有图片.//需要检索20条图片信息,按概率平均10条
      如果有共有几张//都需要3次
      
      而..glob函数..惭愧 ...偶.还没有用过.. 
      

  2.   

    刚才查了 下glob 写了下面的算法..大家看看还有什么问题...但是我还担心..25万条数据到数组...//我最终数据可能到40万条
    //图片可能到30张.<?php
    $sql = "select * from myTable";
    $myAr = $sql->reault_ar($sql);//获取25万数据到数组
    foreach ($myAr as $row) {
    $check = $row[name]." ";//没有考虑后缀 foreach (glob($check) as $filename) {
    $pic_id = time()+rand(99,999);
    $pic_name = $filename;
    $pic_size = filesize($filename);
    $pic_type = filetype($filename);
    $query = "insert into picTable
          (relating_id....)value('".$row[id]."'.....)";
    $sql->query($query);
    }
    }
    ?>
      

  3.   

    $myAr = $sql->reault_ar($sql);//获取25万数据到数组为什么要这样?
    每次取一条记录不就行了吗?
      

  4.   

    谢谢!唠叨老大...$query = "select * from myTable";
    $rst = mssql_query($query);
    while($row =mssql_fetch_array($rst)){   ......
    }
    中$rst = mssql_query();
    //我一直理解为获取数据信息到内存中
    //
    中$row = mssql_fetch_arrary();
    //每次获取数据的方法的机制.呵呵...我还是不太理解的
      

  5.   

    我测试过...
    把数据获取到数组中..和
    while($row =mssql_fetch_array($rst)){   ......
    }
    结果
    还是把数组比较快...我用15万条数据测试的