[PHP-users 1141] header() 関数前の出力について

中井 誠司 php-users@php.gr.jp
Thu, 09 Aug 2001 18:11:20 +0900


中井と申します。

header()関数について質問です。

環境は以下の通り。
 Vine Linux 2.1.5
 Apache 1.3.20
 PHP 4.0.6
 PostgreSQL 7.1.2

マニュアルには、header() 関数は、「すべての実際の出力の前にコールする
必要がある」と記述されています。

実際、PHP 3.0.15 の環境では、header() 関数の前に出力すると Warning が
出ます。

しかし上記の環境(PHP4.0.6)で、以下のようなコードで header()関数を
使用した場合には Warning は出力されず、正しくヘッダーが出力されます。

<?
  print(" ");
  header("Location: test.php");
  exit;
?>

これは、header()関数の呼出前に出力しても良いように仕様が変更された
のでしょうか。
それとも、たまたま動作しているだけで、今後のバージョンアップで動作が
保証されるものでは無いのでしょうか。


---------
E-mail: nakai@kansai-tecsys.co.jp