php バッファ設定メソッド: 最初にバッファを開きます。コードは [ob_start()]、次に内部バッファの内容を返します、コードは [ob_get_contents]、最後に内部バッファの内容を送信します。ブラウザで出力バッファを閉じると、コードは [ob_end_flush] になります。
#php バッファ設定方法:
# 1. 関連機能の紹介:1. フラッシュ: バッファ内の内容を出力し、バッファを削除します。
関数形式: flash()
説明: この関数は頻繁に使用され、非常に効率的です。
関連する学習の推奨事項:php プログラミング2. ob_start: 出力バッファを開きます
関数形式: void ob_start(void)
説明: バッファーがアクティブ化されると、PHP プログラムからのファイル以外のヘッダー情報はすべて送信されず、内部バッファーに保存されます。バッファの内容を出力するには、ob_end_flush() を使用するか、ob_end_clean() を使用してバッファの内容を出力します。
3, ob_get_contents: 内部バッファの内容を返します。
使用法: string 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 の意味は、この文字列でバッファをオープン/クローズすることができ、ob_implicit_flush 関数もそれと同じで、デフォルトではバッファをクローズして絶対出力をオープンします。
2. 使用例:冒頭で、バッファ制御関数を使用すると、ファイルヘッダ内の情報送信エラーを防ぐことができると著者は述べました。 :
コードは次のとおりです:
<? //PHP提示符 ob_start(); //打开缓冲区 echo "Hello/n"; //输出 header('location:gotourl.php'); //把浏览器重定向到gotourl.php ?>
を削除すると、PHP はファイルの 4 行目でエラーを表示します (エラー メッセージは上記のとおりです) ), ただし、ob_start を追加すると、エラー プロンプトは表示されません。その理由は、バッファが開かれたときに、echo 以降の文字がブラウザに出力されず、サーバー上に保持されるためです。それらは、ユーザーが実行するまで出力されません。フラッシュまたは ob_end_flush
を使用すると、ファイル ヘッダー出力にエラーが発生しません。 次は非常に古典的な使用法です:
たとえば、
を使用してサーバーの設定情報を取得し、ただし、この情報はクライアントによって異なります。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 ?>
プログラミング ビデオ コース
以上がPHPバッファの設定方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。