2015-10-06 76 views
0

从一个PHP页面,我必须做一个到另一个PHP文件。 我不在乎等待收到的回复,也不知道它是否成功。PHP:了解CURL超时

调用的文件可能会在5-6秒内结束脚本,所以我不知道如何处理获取超时,考虑到之前所说的。

的代码是这个

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'http://mywebsite/myfile.php'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false); 
curl_setopt($ch, CURLOPT_TIMEOUT, 1); 
$content = trim(curl_exec($ch)); 
curl_close($ch); 
+3

如果您不“不在意等待回应或知道它是否成功”,那么......为什么要加载呢? –

+0

这听起来很不祥,就像您试图使用GET请求来实现应该使用POST执行的操作一样... –

+0

cURL超时定义了curl等待响应来临的时间。它不定义被调用脚本的最大执行时间。后者必须在“其他”方面处理。 – jossif

回答

0

对于第一个任务(如果你不需要等待响应),你就可以开始新的后台进程低于写代码,这将您重定向另一页上。

0

是啊,你肯定不应该在服务器上创建一个文件来响应GET请求。即使作为一种副作用,它也不够理想;作为请求的主要目的,它只是没有意义。

如果你的这样做的POST,你仍然有同样的问题来处理,但是。在这种情况下,如果无法保证该操作足以在HTTP上下文中被接受,则需要将其从其他地方移出。例如。让你的HTTP请求发送一条消息给其他并行工作的系统,同时HTTP响应可以立即发回。