Content-Length

Isle of Jura 10yo

i-modeではContent-TypeとContent-Lengthは出したほうがいい。Content-Lengthを出すのには以下のようにすればいい(唯一の方法ではないけど)。

ob_start();

include('template.php');

$type = 'text/html';
$length = ob_get_length();

header("Content-Length: $length");
header("Content-Type: $type");

ob_end();

これをAOP(?)みたいにできないのかな。MVCでテンプレート エンジンなどを使っているのなら、そこに手を入れればいいのかもしれないが、そこまで枠組みがなくてもいいような。簡単にやるなら、include()の代わりにmy_include()みたいな共通関数を作ってそれを使用すればいいんだろうけど、そういう細かい工夫をしたくない。
template.phpの中に、こいつではContent-Lengthを出したいんだよ、と書いておけばOKみたいなのが良いかなと。JSPだと@pageディレクティブ(だっけ?)でContent-Typeは指定できるけど。