0

ディスクに保存されたファイルを想定します。

HTTP/1.1 200 OK
Date: Thu, 28 Jun 2012 22:11:14 GMT
Pragma: no-cache
Cache-Control: must-revalidate, no-store
Expires: Thu, 01 Jan 1970 00:00:00 GMT
Content-Length: 1234
Connection: close
Content-Type: text/html

<html ....

ファイル内のヘッダーを認識して正しく送信すると同時にファイルを出力するPHPの組み込み関数はありますか?

4

2 に答える 2

1

いいえ、ありません。自分で実装する必要があります。

于 2012-10-13T21:12:55.350 に答える
0

存在しませんが、以下を使用できます

$file = "file.html";
var_dump(fileHeaders($file));

出力

array
  0 => string 'HTTP/1.1 200 OK' (length=15)
  1 => string 'Date: Thu, 28 Jun 2012 22:11:14 GMT' (length=35)
  2 => string 'Pragma: no-cache' (length=16)
  3 => string 'Cache-Control: must-revalidate, no-store' (length=40)
  4 => string 'Expires: Thu, 01 Jan 1970 00:00:00 GMT' (length=38)
  5 => string 'Content-Length: 1234' (length=20)
  6 => string 'Connection: close' (length=17)
  7 => string 'Content-Type: text/html' (length=23)
  8 => string '' (length=0)

使用した機能

function fileHeaders($file) {
    $content = file_get_contents($file, null, null, 0, 1000);
    $content = trim($content);
    if (stripos($content, "HTTP") === 0) {
        return array_map("trim", explode("\n", strtok($content, "<")));
    }
    return false;
}
于 2012-10-13T21:17:58.767 に答える