ネットワーク 関数
PHP Manual

header_register_callback

(バージョン情報なし。おそらく SVN 版にしか存在しないでしょう)

header_register_callbackヘッダ用の関数を登録する

説明

bool header_register_callback ( callable $callback )

PHP が出力を送信しはじめるときにコールする関数を登録します。

callback が実行されるのは、 PHP がすべてのヘッダを送出し終えてからその他の出力を始めるまでの間です。 ここで、送信する前のヘッダを操作できます。

パラメータ

callback

ヘッダを送信する前にコールする関数。パラメータは受け取らず、返り値も無視されます。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例1 header_register_callback() の例

<?php

header
('Content-Type: text/plain');
header('X-Test: foo');

function 
foo() {
 foreach (
headers_list() as $header) {
   if (
strpos($header'X-Powered-By:') !== false) {
     
header_remove('X-Powered-By');
   }
   
header_remove('X-Test');
 }
}

$result header_register_callback('foo');
echo 
"a";
?>

上の例の出力は、 たとえば以下のようになります。

Content-Type: text/plain

a

注意

header_register_callback() はヘッダを送出しようとするときに実行されるので、 この関数の中で何らかの出力をしてしまうと出力が壊れてしまいます。

注意:

ヘッダにアクセスできたりヘッダを出力したりするのは、 それに対応した SAPI を使っている場合のみです。

参考


ネットワーク 関数
PHP Manual