大虾快来看看,为什么这个程序运行几百条的时候就停了。

qq_24393539 2017-06-22 09:53:26
shici_tmp 表中只有10万多条数据。
每次都是运行几百次(次数不一定)的时候就停止了。
把$the_yuan1这个值改成固定值就可以运行完。这是为什么?


<?php include './conn.php'; ?>

<?php //
//
mysql_query("SET NAMES 'UTF8'");
mysql_query("SET CHARACTER SET UTF8");
mysql_query("SET CHARACTER_SET_RESULTS=UTF8'");


function rand0($len){
$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789abcdefghijklmnopqrstuvwxyz';
$string=time();
for(;$len>=1;$len--){
$position=rand()%strlen($chars);
$position2=rand()%strlen($string);
$string=substr_replace($string,substr($chars,$position,1),$position2,0);
}
return $string;
}

for($ji=0;$ji<10000;$ji++){
echo $ji.'-------AAAAAAAAAAAAAAAAAAAAAA<br>';
$the_yuan1=rand0(8);
$result1=mysql_query("SELECT * FROM shici_tmp where tmp=1 and yuanwen = '".$the_yuan1."' ");
$row1=mysql_fetch_row($result1);
while($row1){
$c_id=$row1[0];
$c_biaoti=$row1[1];

$row1=mysql_fetch_row($result1);
}
echo $ji.'-------BBBBBBBBBBBBBBBBBBBBB<br>';
}

echo "OKOKOKOKOKOKOKO";
?>
...全文
279 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
php—solitude 2019-03-19
  • 打赏
  • 举报
回复
引用 9 楼 php——solitude 的回复:
是不是超过了PHP的最大运行内存 不建议直接for循环特别大的数组
补充下 会不会是没释放导致内存溢出
php—solitude 2019-03-19
  • 打赏
  • 举报
回复
是不是超过了PHP的最大运行内存 不建议直接for循环特别大的数组
何嘉伟044 2019-01-09
  • 打赏
  • 举报
回复
应该是io限制了。就是数据库连接出现问题了。10多万条这样处理,肯定是要中断的。
qq_24393539 2017-06-27
  • 打赏
  • 举报
回复
谢谢各位。 首先应该不是执行超时问题。。 tmp自动也没有建索引。 我将httpd-mpm.conf的参数设置成: <IfModule mpm_winnt_module> ThreadsPerChild 1000 MaxRequestsPerChild 50000 </IfModule> 可以运行2个小时左右,大概2万多条,还是停止了。
natici 2017-06-26
  • 打赏
  • 举报
回复
看看表shici_tmp 里面的tmp字段和yuanwen字段有没有设为索引,没有的话估计会超时。 毕竟10w条数据每次都搜完整个表,没有索引还要搜1w次,这db负载也不低啊。
黄袍披身 2017-06-25
  • 打赏
  • 举报
回复
看看是不是你的PHP脚本执行时间超时了
Fsmecx 2017-06-25
  • 打赏
  • 举报
回复
for语句感觉好奇怪
xuzuning 2017-06-25
  • 打赏
  • 举报
回复
仅就你给出的代码,不会出现你说的现象 rand0 只是产生随机串,而这个随机串是否能在数据库中检索到,并无碍大局(因为你并没有做什么) 况且数据库操作所花费的时间,并不计算在 php 有效工作时间内
傲雪星枫 2017-06-25
  • 打赏
  • 举报
回复
代码中加上

set_time_limit(3600);
试试验
傲雪星枫 2017-06-24
  • 打赏
  • 举报
回复
顶部加入

ini_set('display_errors','on');
error_reporting(E_ALL);


看看有什么错误。

21,886

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧