我使用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响应
- 发送响应 读取响应
- 从响应体中获取文件数据