我有个一个数组 $Barcodes=array(zhangsan,lisi,wangwu,haoer,....);大概有1000个
然后我读取数据库里的数据,数据库读出出一条,然后和数组比较看是否相等
while($ROW=mysql_fetch_array($cursor)){
$ID=$ROW["ID"];
foreach($Barcodes as $str) {
if($ID==$str)
做逻辑处理
}
}
数据库中大概也有1000条,和数组中的1000条对比发现速度很慢,有啥思路能让1000条数据和1000条数对比更高效
然后我读取数据库里的数据,数据库读出出一条,然后和数组比较看是否相等
while($ROW=mysql_fetch_array($cursor)){
$ID=$ROW["ID"];
foreach($Barcodes as $str) {
if($ID==$str)
做逻辑处理
}
}
数据库中大概也有1000条,和数组中的1000条对比发现速度很慢,有啥思路能让1000条数据和1000条数对比更高效
解决方案 »
- 紧急求助:正则读取相应的两个字段并列出
- 反序列化 SimpleXMLElement Object
- 谁能帮我解析一下(1)对象(2)类(3)对象之间的关系这三个是什么意思
- 做个小站,不知道该用哪个cms改
- 求一正则,需要用到伪静态规则中
- 如何突出显示访问过的链接?
- windows下,php与可执行程序间的进程通信能用消息队列吗?
- 我在PHPmyadmin 里直接用SQL语句插入的数据, 取出来显示在网页上是乱码, 为什么
- 如何知道session是否还在活动
- 哪位朋友有PHP写的人才交流程序?给个链接好吗?谢谢,
- php 如何调用mysql 输出参数。请教
- 关于smarty框架的问题,急!!!!!!
// 修改sql查询(忘记了sql的最长是多长)
$max = count($Barcodes);
$i = 0;
$per = 100;
while($i * $per <= $max) {
$IDS = "'" . implode("', '", array_slice($Barcodes, (++$i)*$per, $per)). "'";
$sql = "select * from table where ID in ($IDS)";
$cursor = mysql_query($sql);]
while($ROW=mysql_fetch_array($cursor)){
做逻辑处理
}
}// 找出所有内容然后进行交集处理
$IDS = array();
$data = array();
while($ROW=mysql_fetch_array($cursor)){
$IDS[] = $ROW["ID"];
$data[$ROW["ID"]] = $ROW;
}
$hasIDS = array_intersect($IDS, $Barcodes);
foreach($hasIDS as $ID) {
$ROW = $data[$ID];
做逻辑处理
}