PHP出力制御関数
PHP出力制御関数
PHPは、ブラウザに送信されるコンテンツとそのタイミングを制御する一連の関数を提供します。これは、出力制御と呼ばれます。
出力は、次のソースのいずれかから取得できます。
echo
、、、 ...およびその他print
の同様printf
のprint_r
関数とステートメント- PHPからの通知、警告、エラー
<?php ?>
タグ以外のコンテンツ
PHPとそれが実行されているバックエンドは、出力をユーザーに送信する前にバッファーに保持する場合があります。
注:出力制御関数は、任意の数の出力バッファーを作成できます。出力バッファは、プログラムによって与えられた出力をキャッチします。新しい出力バッファーはそれぞれ、出力バッファーのスタックの一番上に配置され、それが提供する出力はすべて、その下のバッファーによってキャッチされます。出力制御関数は最上位のバッファのみを処理するため、最上位のバッファを削除して、その下のバッファを制御する必要があります。
インストール
PHP出力制御関数は、PHPコアの一部です。これらの機能を使用するためにインストールは必要ありません。
ランタイム構成
出力制御機能の動作は、php.iniの設定の影響を受けます。
Name | Default | Description | Version |
---|---|---|---|
output_buffering | "0" | Enables output buffering for all PHP files by default | 4 |
output_handler | NULL | Set the name of the default function which handles the output of all output buffers | 4 |
implicit_flush | "0" | Enables implicit flush, which causes output to be sent directly to the browser on each output statement | 4 |
url_rewriter.tags | "a=href,area=href, frame=src,form=,fieldset=" | Indicates which HTML tags and attributes can be modified by the URL rewriter (the output_add_rewrite_var() function.) | 4.3 |
url_rewriter.hosts | The current value of $_SERVER['HTTP_HOST'] | URL rewriting is only done on the server's own URLs by default. To allow for rewriting URLs of other websites, set the hostnames of the other websites here. | 7.1 |
PHP出力制御関数
Method | Function |
---|---|
flush() | Attempts to send content from the system's output buffer to the browser |
ob_clean() | Deletes all of the content from the topmost output buffer |
ob_end_clean() | Deletes the topmost output buffer and all of its contents |
ob_end_flush() | Deletes the topmost output buffer and outputs its contents |
ob_flush() | Outputs the contents of the topmost output buffer and clears the buffer |
ob_get_clean() | Returns all of the contents of the topmost output buffer and clears the buffer |
ob_get_contents() | Returns the contents of the topmost output buffer |
ob_get_flush() | Outputs and returns the contents of the topmost output buffer and then deletes the buffer |
ob_get_length() | Returns the number of bytes of data that are in the topmost output buffer |
ob_get_level() | Returns a number indicating how many output buffers are on the stack |
ob_get_status() | Returns information about the output buffers |
ob_gzhandler() | Used as a callback function for ob_start() to compress the contents of the buffer when sending it to the browser |
ob_implicit_flush() | Turns implicit flushing on or off |
ob_list_handlers() | Returns an array of callback function names that are being used by the topmost output buffer |
ob_start() | Creates a new output buffer and adds it to the top of the stack |
output_add_rewrite_var() | Used to append query string parameters to any URL in the output |
output_reset_rewrite_vars() | Removes all variables added by output_add_rewrite_var() |