网站建设资讯

NEWS

网站建设资讯

php大数据递归超时 php处理大量数据+超时

php 要对一个页面进行400多次的循环请求,每次请求返回时间不定,结果往往是超出访问时间。这应该怎么办

1.用js的setInterval+ajax来请求,PHP里面加条件判断是否成功;

赤壁网站制作公司哪家好,找创新互联!从网页设计、网站建设、微信开发、APP开发、响应式网站开发等网站项目制作,到程序开发,运营维护。创新互联自2013年起到现在10年的时间,我们拥有了丰富的建站经验和运维经验,来保证我们的工作的顺利进行。专注于网站建设就选创新互联

2.用PHP递归循环来做,如:

?php

function test($url)

{

echo $url.'\t\n--------';

$r = @file_get_contents($url);//我这里返回的是页数,如果没有下一页的时候返回0,停止执行

echo $r;

if($r 0)

{

$url = ''.$r;

test($url);

}

else

{

echo 'fail';

}

}

$url = '';

$res = test($url);

?

php 调用 大数据 显示不全问题。。

5万条?

恐怖,php执行是有一个时间的,不是无止境的执行,超时后,就会停止执行。所以返回有多有多有少了!

解决方法:

1、有个函数是设定php脚本执行超时时间的,加在文件的头部,你设定多久就多久,具体哪个函数,忘记了,自己百度一下

2、修改php,.ini里面的配置,具体也忘记了,自己百度一下

不过不建议你一个页面返回这么多数据,就算能全部返回,也网页打开速度也会很慢啊,搞成分页显示,不是很好吗!@

PHP递归调用导致内部服务器错误问题,怎么解决

我们在使用PHP递归时,会遇到各种各样的问题,其中比较令人苦恼的是有关PHP递归返回值时出现的问题。其实细细想想这是一个很简单的问题。可就是这个简单的问题困扰了半个下午。问题出在递归函数的返回值上。

这是开始写的:

代码如下:

?php   

function test($i)   

{   

$i -= 4;   

if($i  3)   

{   

return $i;   

}   

else    

{   

test($i);   

}   

}   

echo test(30);   

这段代码看起来没有问题,其实有else里面是有问题的。在这里执行的test没有返回值。所以虽然满足条件$i  3时 return $i整个函数还是不会返回值的。对上面的PHP递归返回值函数做如下修改:

代码如下:

?php   

function test($i)   

{   

$i -= 4;   

if($i  3)   

{   

return $i;   

}   

else    

{   

return test($i); //增加return, 让函数返回值   

}   

}   

echo test(30);   

?

以上代码示例就是PHP递归返回值出现问题时的具体解决方法。

php 递归问题

第一,没有选择数据库,在连接数据库后添加mysql_select_db("数据库名");

第二、我感觉不代码不全吧,因为我拷下来看了一下,少一},当然上面那个没少,补充的少了。

第三、还有没看出这个$ii是干什么用的。

第四、没感觉$selec=0与不等于0输出有什么不同。

第五、以后最好是把html代码与程序分开写。

因为不知道需求,只能根据你的程序简单修改如下:

?php

function TreeMenu($selec) {

$Conn=mysql_connect("localhost","kk","kk123");

mysql_select_db("数据库名");

$ii=1;

$sql="select * from tvmenu where bid=".$selec;

$result=mysql_query($sql,$Conn);

$str = "";

while($row =mysql_fetch_array($result)) {

if($selec=0) {

$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';

}else {

$str = 'option value="'.$row['id'].'"'.$row['name'].'/option ';

}

echo $str;

$ii++;

TreeMenu($row['id']);

$ii--;

}

}

?

select name="bid" id="bid"

?php

TreeMenu(0);

?

/select

php递归最长递归次数

不一定是1000,可能多可能少,跟你的PHP版本还有安装的操作系统有关,在到达一定次数的递归时候,php会自动杀掉这个function,而且不返回任何error,你这个连接错误应该是HTTP 500吧,那就是没到php规定的递归次数,但是你服务器的stack已经满了,结果php进程崩溃,返回500。。

php 更新大数据时很慢

没必要一次性查出100W条。每次请求3-5W数据update,分页用递归。

控制好变量内存,不要内存溢出。


标题名称:php大数据递归超时 php处理大量数据+超时
链接地址:http://njwzjz.com/article/dosoisp.html