在PHP中,您可以使用PHP文件流功能(如file_get_contents()
)来处理HTTP请求,但是为了处理复杂的HTTP通信,cURL显然更好,更灵活。我已经使用cURL多年了,它永远不会让我失望。
最近,我尝试测试PECL_HTTP扩展,发现它甚至更简单,并且在大多数HTTP请求上工作得很好,至少在开始时是这样。但是,我仍然对PECL_HTTP扩展有疑问。
那么,PECL_HTTP是否像cURL一样强大而灵活?特别是对于不同类型的复杂HTTP通信?虽然PECL_HTTP可以缩短您的代码并使其更容易处理大多数"常规" HTTP请求,更复杂的HTTP请求呢?
与我已经知道的cURL相比,PECL_HTTP有一些缺点:
除了更简单和更短的代码之外,PECL_HTTP还有其他优势吗?
答案 0 :(得分:6)
PHP curl扩展(以及curl本身)被认为很多比PECL HTTP扩展更成熟。这是因为curl扩展是PHP核心发行版的一部分,而PECL HTTP扩展必须单独下载和安装。
如果您发现卷曲界面很难用于简单请求(我不能责怪您),请记住您可以围绕它执行包装函数来执行常见任务;例如,人们可能会写一些类似的东西:
function curl_get($url, $options = array()) {
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt_array($ch, $options);
return curl_exec($ch);
}