鉴于下面的脚本以另一种语言获取单词并与服务器建立连接。如何在GET/PHP5中限制每秒连接服务器的数量?
但是,有这么多单独的字符串实体,它们中的一些实体返回为空值。 StackOverflow研究员@Pekka正确评估了Google的局限性:对结果进行定时。
Q1.如何使连接更强大/可靠,尽管速度成本高? Q230。我怎样才能有意限制每秒连接到服务器的连接数量?
只要返回的值是正确的,我愿意牺牲速度,甚至会导致120秒延迟)。现在一切都开始并在0.5秒内完成,并且翻译中存在各种空白。几乎就像荷兰奶酪(有孔),我想奶酪有一个孔,即使这意味着更长的等待时间。
正如你可以看到我自己的解决方案,脚本睡觉四分之一秒不能称为优雅...如何从这里开始?
$url='http://ajax.googleapis.com/ajax/services/language/translate?v=1.0&q=' . rawurlencode($string) . '&langpair=' . rawurlencode($from.'|'.$to);
$response = file_get_contents($url,
null,
stream_context_create(
array(
'http'=>array(
'method'=>"GET",
'header'=>"Referer: http://test.com/\r\n"
)
)
));
usleep(250000); # means 1/4 of second deliberate pauze
return self::cleanText($response);
}