数组值会在一段时间后自动清除

时间:2013-02-13 05:13:12

标签: php arrays execution

我面临一个奇怪的问题。我有一个名为$ ipList的数组,它包含一定数量的ip地址以传递给服务。服务意味着执行api以检查ip是否在其列表中。这种检查是通过卷曲会话完成的。它执行了一分钟,在得到这个结果后,我打印了我的数组,它是空白的。如果我dint执行调用,它将打印数组,我认为数组在一段时间后被清除,该怎么办。

$ipList=getIpList(); //get iplist
$res=checkService($ipList); //this is the function for checking through curl 
print_r($ipList); // try printing array

如果我对$res=checkService($ipList);

行发表评论,则会打印出来

我需要帮助!

1 个答案:

答案 0 :(得分:0)

最有可能发生的是checkService函数(您的'API调用')超时。

检查是否属实。如果是,请尝试优化checkService(或相应的脚本)或增加PHP超时间隔。

示例:

set_time_limit (0);

文档:

http://php.net/manual/en/function.set-time-limit.php

void set_time_limit ( int $seconds )
  

设置允许脚本运行的秒数。如果是这样的话   到达后,脚本返回致命错误。默认限制为30   秒,或者,如果存在,则定义的max_execution_time值   php.ini中。

     

调用时,set_time_limit()从零重新启动超时计数器。   换句话说,如果超时是默认的30秒,那么25   在脚本执行的几秒钟内,调用如set_time_limit(20)   制作完成后,脚本将在超时前运行45秒。