【发布时间】:2011-05-27 18:52:12
【问题描述】:
我有一个域可用性检查,它连接到一个 API 并从 $tmp 输出“可用:和不可用:”。下面的代码只会检查可用性一次。
我想多次检查域的可用性(可能在循环中?),不必每次都重新启动 cURL 连接(因为它浪费时间)强>。
我只是不知道如何连接到 cURL 并运行循环(通过 API 进行检查)。
当前代码
<?php
function GetCurlPage ($pageSpec)
{
$ch = curl_init($pageSpec);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
$tmp = curl_exec ($ch);
curl_close ($ch);
$tmp = preg_replace('/(?s)<meta http-equiv="Expires"[^>]*>/i', '', $tmp);
$tmp = explode('<br>', $tmp);
echo $tmp[0];
echo "<br>";
echo $tmp[1];
echo "<br>";
return $tmp;
}
$returnUrl = "http://www.mysite.com.au/check.php";
$url = "https://www.apisite.com.au/availability/check.php?domain=testdomain&suffixes=.com.au";
$output = GetCurlPage("$url");
?>
【问题讨论】:
-
真的不确定我是否正确地解决了您的问题。但是没有“ connecting once to cURL ”。 Curl 是一个用于发出请求的 API(HTTP 是一项副业)。它检索每个请求一页。没有持久连接或恒定数据流(除非支持 WebSocket)可用于多个请求。
-
好的,问题是这样的;我需要上面的脚本多次检查 $url ($domain+$suffixes) 中指定的域的可用性,即:在一个循环中。我可以在循环中运行脚本的底部(在 cURL 函数之外),但如果我这样做,curl 会被初始化并重新执行。这在可用性检查之间浪费了 300 毫秒到 1 秒。我可以做些什么来减少执行循环的时间以及可以将循环放置在哪里?希望这会有所帮助,对不起。谢谢!
标签: php javascript performance curl