PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのheader()関数とは?使い方とパラメータを解説

PHPのheader()関数は、クライアント(ブラウザなど)に対して生のHTTPヘッダーを送信するための関数です。コンテンツの種類の指定、リダイレクト、ファイルのダウンロード処理など、HTTP通信の制御において重要な役割を果たします。

基本構文

header(string, replace, resp_code)

パラメータ

  • string − 送信するヘッダー文字列を指定します。例:「Content-type:application/pdf」など。

  • replace − 省略可能なパラメータです。同じ種類のヘッダーが既に存在する場合に、それを置き換えるか(true)、2つ目のヘッダーとして追加するか(false)を指定します。デフォルトはtrue(置き換え)です。

  • resp_code − 省略可能なパラメータです。HTTPレスポンスコードを強制的に指定した値に設定します。

戻り値

header()関数は値を返しません(void)。

使用例:生成したPDFをダウンロードさせる

次の例では、サーバー上のPDFファイルを「output.pdf」という名前でダウンロードさせます。

<?php
   header("Content-type:application/pdf");
   header("Content-Disposition:attachment;filename=output.pdf");
   readfile("demo.pdf");
?>

このコードを実行すると、入力元のファイルが「demo.pdf」であっても、ユーザーの手元にダウンロードされるファイル名は「output.pdf」になります。
1行目のヘッダーでコンテンツの種類(MIMEタイプ)をPDFとして宣言し、2行目で添付ファイルとして扱い、保存時のファイル名を指定しています。

注意点

header()関数を使用する際は、実際の出力(HTMLタグや空白文字、echo文など)より前に呼び出す必要があります。すでに出力が行われた後にヘッダーを送信しようとすると、「headers already sent by...」というエラーが発生します。これはHTTPの仕様上、ヘッダーは本文より先に送信されなければならないためです。

  1. PHPのlog10()関数とは?常用対数の計算方法と具体例をわかりやすく解説

    定義と使用方法log10() 関数は、数値の常用対数(底が10の対数)を計算するための関数です。常用対数は「10を底とする対数」とも呼ばれ、log10x を求める際に使用されます。自然対数との間には、次のような関係式が成り立ちます。log10x = logex / loge10この式に基づけば、たとえば次のように計算できます。log10100 = loge100 / loge10 = 2PHPでは、この常用対数の計算を log10() 関数が担っています。構文log10 ( float $arg ) : floatパラメータ番号パラメータと説明1arg常用対数(底10の対数)を計算したい数値を

  2. PHPのheader()関数とは?主な用途と使い方を実例付きで解説

    header()関数は、PHPにあらかじめ用意されているネイティブ関数です。この関数を使用すると、Webサーバーがクライアント(ブラウザ)へ実際の出力を行う前に、HTTPヘッダーの内容を制御することができます。 header関数は、サーバーが返すHTTPレスポンスのヘッダーを設定する役割を担います。PHPでは、ページのリダイレクト、タイムゾーンの設定、キャッシュ制御など、さまざまな場面でheader関数が活用されています。 以下に、PHPにおけるheader()関数の代表的な用途を紹介します。 1. ページのリダイレクト あるWebページから別のWebページへユーザーを転送(リダイレクト)し