MW211 EXIT

devlog
PHP/出力制御関数
2013年09月21日
そのまま標準出力するのではなく、一旦出力バッファに溜め込んでから出力する。
出力バッファ内で一括置換的なことができるので便利であるらしい。

【基本】
┌──────────────┬───────────────────────┐
│ob_start()                  │開始                                          │
├──────────────┼───────────────────────┤
│ob_get_contents()           │取得                                          │
│ob_flush()                  │出力                                          │
│ob_clean                    │消去                                          │
├──────────────┼───────────────────────┤
│ob_end_flush()              │終了(出力)                                    │
│ob_get_flush()              │=ob_get_contents()+ob_end_flush()           │
│ob_end_clean()              │終了(破棄)                                    │
│ob_get_clean()              │=ob_get_contents()+ob_end_clean()           │
└──────────────┴───────────────────────┘
【確認】
┌──────────────┬───────────────────────┐
│ob_get_status()             │各種情報確認                                  │
│ob_get_level()              │階層確認                                      │
├──────────────┼───────────────────────┤
│ob_get_length()             │サイズ確認                                    │
├──────────────┼───────────────────────┤
│ob_list_handlers()          │使用中ハンドラ確認                            │
└──────────────┴───────────────────────┘
【特殊】
┌──────────────┬───────────────────────┐
│ob_gzhandler()              │gzip圧縮設定(「ob_start('ob_gzhandler');」)   │
├──────────────┼───────────────────────┤
│output_add_rewrite_var()    │URLにGETパラメータを付加                      │
│output_reset_rewrite_vars() │output_add_rewrite_var()を終了                │
└──────────────┴───────────────────────┘
【フラッシュ】
┌──────────────┬───────────────────────┐
│flush()                     │フラッシュ                                    │
├──────────────┼───────────────────────┤
│ob_implicit_flush(TRUE)     │自動フラッシュ設定(flush()不要)               │
└──────────────┴───────────────────────┘
  実際に出力するためには「ob_flush()」系の直後に「flush()」も必要。
  以下のような関係となる。
  ┌──────────────────┐
  │                        │(echo)    │
  │┌─────┌─────↓─┐      │
  ││PHP       │ 出力バッファ │      │
  │└─────└─────┬─┘      │
  │                        │ob_flush()│
  │┌─────┌─────↓─┐      │
  ││Webサーバ │ 出力バッファ │      │
  │└─────└─────┬─┘      │
  │                        │flush()   │
  │┌───────────↓┐        │
  ││ブラウザ                │        │
  │└────────────┘        │
  └──────────────────┘
分類:PHP