为什么相对URL在PHP file_get_contents更快



我使用PHP和file_get_contents。它真的很慢,即使我试着用这个来加速它:

$opts = array(
    'http'=> array(
    'header' => 'Connection: close'
    )
);
$context = stream_context_create($opts);
$contents = file_get_contents('http://www.example.com/file.txt', false, $context);

我也试过cURL。同样的问题。

我读到include应该比file_get_contents慢。这似乎只有在不包括整个URL但包括相对路径时才成立,就像这样…

file_get_contents('../file.txt');
我的问题是……为什么相对路径比完整URL快得多?

file_get_contents不接受相对URI。它要么接受绝对URI,要么接受文件路径。

使用文件路径更快,因为:

  • 从文件系统
  • 读取

更省力
  • 发出HTTP请求
  • 读取请求
  • 从文件系统加载文件(可能在此过程中执行PHP)
  • 将其放入HTTP响应
  • 发送响应
  • 读取响应
  • 从响应体中获取文件数据

相关内容

  • 没有找到相关文章

最新更新