这可能与通常要求的相反,但无论如何实际上使cURL请求变慢并使加载过程持续更长时间?我搜索过,找不到任何解决方案.谢谢你的帮助!
如果您确实需要破解缓慢的传输,您可以在curl进度函数中添加usleep:
<?php
/* fast curl */
$cFast = curl_init('http://stackoverflow.com/users/2779152/madebydavid');
curl_setopt($cFast, CURLOPT_RETURNTRANSFER, true);
$time = microtime(true);
$result = curl_exec($cFast);
echo("fast: ".(microtime(true) - $time)."\n");
/* slow curl */
$cSlow = curl_init('http://stackoverflow.com/users/2779152/madebydavid');
curl_setopt($cSlow, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cSlow, CURLOPT_NOPROGRESS, false);
curl_setopt($cSlow, CURLOPT_PROGRESSFUNCTION, function() {
usleep(100000);
return 0;
});
$time = microtime(true);
$result = curl_exec($cSlow);
echo("slow: ".(microtime(true) - $time)."\n");
Run Code Online (Sandbox Code Playgroud)
第一个请求很快,第二个请求很慢 - 如果将其保存为curlFastSlow.php然后运行它,第二个请求应该有明显的差异:
$ php -q curlFastSlow.php
fast: 0.58203315734863
slow: 1.5010859966278
Run Code Online (Sandbox Code Playgroud)
尝试CURLOPT_MAX_RECV_SPEED_LARGE,以减慢传输速度
curl_setopt($cSlow,CURLOPT_MAX_RECV_SPEED_LARGE,10)
Run Code Online (Sandbox Code Playgroud)
它只适用于PHP 5.4
ps.Sorry穷人的恩赐
| 归档时间: |
|
| 查看次数: |
1621 次 |
| 最近记录: |