【发布时间】:2016-03-26 23:04:42
【问题描述】:
其实有两个子问题:
PHP
curl库和libcurl 有什么区别? PHPcurl库只是连接和使用libcurl的桥梁还是用PHP 语言重写的libcurl?为什么
curl比PHP中的file_get_contents函数快很多?
【问题讨论】:
其实有两个子问题:
PHP curl 库和libcurl 有什么区别? PHP curl 库只是连接和使用libcurl 的桥梁还是用PHP 语言重写的libcurl?
为什么curl比PHP中的file_get_contents函数快很多?
【问题讨论】:
- PHP curl库和libcurl的区别
PHP/CURL 是底层 libcurl 库的“绑定”。这意味着 PHP curl 扩展中有一堆胶水代码,最终调用 libcurl 来实际执行传输操作。
PHP 代码所做的只是从 PHP 约定转换为 libcurl 约定(然后再转换回来)。它允许 PHP 用户利用 libcurl 的原始原生速度和最新开发,而无需任何人进行任何更改。
- 为什么 curl 比 PHP 中的 file_get_contents 函数更快?
两者都是用 C 语言实现的,并为 PHP 程序提供文件传输功能。这种解释可能是因为它们各自的软件架构和特定的功能集使得在某些用例中一个比另一个更快。
在优化 libcurl 中的传输性能方面可能还花费了更多的工作和精力。
在大多数情况下,可能值得准确地对您的案例进行基准测试,以便您知道您不依赖于针对具有其他特征的案例进行的速度测试。
【讨论】: