PHP_PHP チュートリアルのバッファ制御の実装コード
PHP を使用する場合、誰もが必然的に header 関数と setcookie 関数を使用します。これら 2 つの関数はファイルのヘッダー情報をブラウザーに送信しますが、これら 2 つの関数を使用する前に出力 (空白を含む) がある場合は、次のような出力が行われます。スペース、キャリッジ リターン、ライン フィードなどを使用すると、エラーが表示されます。プロンプト情報は次のとおりです。「ヘッダーはすべて送信準備ができました」!では、出力後にファイルのヘッダー情報を送信する方法はあるのでしょうか? PHP 4.0 にはバッファ制御のための関数がいくつか追加されています。これらの関数を使用すると、多くの問題を解決できます。
1. 関連機能の紹介:
1. フラッシュ: バッファー内の内容を出力し、バッファーを削除します。
関数形式:flush()
注: この機能は頻繁に使用され、非常に効率的です。
2. ob_start: 出力バッファを開きます
関数形式: void ob_start(void)
注: バッファーがアクティブ化されると、PHP プログラムからのファイル以外のヘッダー情報はすべて送信されず、内部バッファーに保存されます。バッファの内容を出力するには、ob_end_flush() を使用するか、ob_end_clean() を使用してバッファの内容を出力します。
3、ob_get_contents: 内部バッファの内容を返します。
使用法: 文字列 ob_get_contents(void)
説明: この関数は、出力バッファがアクティブ化されていない場合、現在のバッファの内容を返します。FALSE を返します。
4. ob_get_length: 内部バッファーの長さを返します。
使用法: int ob_get_length(void)
説明: この関数は、出力バッファがアクティブ化されていない場合、ob_get_contents と同じように現在のバッファの長さを返します。その後、FALSE を返します。
5. ob_end_flush: 内部バッファの内容をブラウザに送信し、出力バッファを閉じます。
使用法: void ob_end_flush(void)
説明: この関数は、出力バッファーの内容 (存在する場合) を送信します。
6. ob_end_clean: 内部バッファの内容を削除し、内部バッファを閉じます
使用法: void ob_end_clean(void)
注意: この関数は内部バッファの内容を出力しません。
7. ob_implicit_flush: 絶対リフレッシュをオンまたはオフにします
使用法: void ob_implicit_flush ([int flag])
注: Perl を使用したことがある人なら誰でも、?$|=x の意味を知っています。この文字列はバッファを開いたり閉じたりできます。デフォルトでは、バッファを閉じて絶対出力を開きます。
2. 使用例:
冒頭で、著者はバッファ制御関数を使用すると、ファイルヘッダー内の情報送信時のエラーを防ぐことができると述べました。例を次に示します。
ob_start(); //バッファを開きます
echo "Hello/n" //Output
header(' location:gotourl .php'); // ブラウザを gotourl.php にリダイレクトします
?>
以下は非常に古典的な使用法です:
例えば、 を使用してサーバーとクライアントの設定情報を取得しますが、この情報はクライアントによって異なります。phpinfo() の出力を保存したい場合はどうすればよいですか。 ) 関数?バッファ制御が存在しない前は、まったく方法がなかったと言えますが、バッファ制御を使用すると、それを簡単に解決できます。
ob_start(); //バッファを開きます
phpinfo() //phpinfo関数を使用します
?$info=ob_get_contents(); ; //バッファの内容を取得し、?$info
?$file=fopen('info.txt','w') //ファイルを開く info.txt
fwrite(?$file, ?$info); // info.txt
fclose(?$file); // ファイルを閉じる info.txt
?>
上記の方法を使用すると、さまざまなユーザーの phpinfo 情報を保存できます。これは以前は不可能だったかもしれません。実は上記は一部の「処理」を「関数」に変換する方法なのです!

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

Visual Studio Code (VS Code とも呼ばれる) は、すべての主要なオペレーティング システムで利用できる無料のソース コード エディター (統合開発環境 (IDE)) です。 多くのプログラミング言語の拡張機能の大規模なコレクションを備えた VS Code は、

CakePHP はオープンソースの MVC フレームワークです。これにより、アプリケーションの開発、展開、保守がはるかに簡単になります。 CakePHP には、最も一般的なタスクの過負荷を軽減するためのライブラリが多数あります。

このチュートリアルでは、PHPを使用してXMLドキュメントを効率的に処理する方法を示しています。 XML(拡張可能なマークアップ言語)は、人間の読みやすさとマシン解析の両方に合わせて設計された多用途のテキストベースのマークアップ言語です。一般的にデータストレージに使用されます
