PHP4 的新函數介紹 - 輸出信息控制函數 魔族精靈
這些函數可以讓你控制你的腳本輸出的內容.可以用于許多不同的情況,特別是在你的腳本已經輸出信息后需要發送文件頭新的情況. 輸出控制函數不對使用 header() 或 setcookie() 發送的文件頭信息產生影響,只對那些類似于 echo() 和 PHP 代碼的數據塊有作用.
例 1. 控制輸出
<?php
ob_start(); echo "Hello\n";
setcookie ("cookiename", "cookiedata");
ob_end_flush();
?>
在上面的例子中,使用 echo() 的輸出內容將會保存在輸出緩沖區中,直到調用了 ob_end_flush(). 這樣做有意義的地方是,調用 setcookie() 的內容被成功的存儲在 cookie 里面而不會引起錯誤. (正常情況下,你不可以在有數據已經發送后再發送文件頭信息到用戶瀏覽器.)
相關函數 header() and setcookie().
韓數列表 flush — 刷新輸出緩沖區 保存在輸出緩沖區的內容會被發送到瀏覽器
ob_start — 打開輸出緩沖區 這樣所有的輸出信息不在直接發送到瀏覽器,而是保存在輸出緩沖區里面
ob_get_contents — 返回輸出緩沖區的內容 如果你想以后處理輸出的內容,可以調用這個函數保留一個備份
ob_get_length — 返回輸出緩沖區的內容長度
ob_end_flush — 結束(發送)輸出緩沖區的內容,關閉輸出緩沖區
ob_end_clean — 刪除(放棄)輸出緩沖區的內容,關閉輸出緩沖區 如果你的程序發現輸出內容有問題,可以放棄所有輸出內容,可以防止泄漏某些秘密信息
ob_implicit_flush — 打開或關閉直接刷新 打開后,每個腳本輸出都直接發送到瀏覽器,不再需要調用 flush(),
|