PHP4的新函數介紹 - 輸出信息控制函數

發表于:2007-07-14來源:作者:點擊數: 標簽:
這些函數可以讓你控制你的腳本輸出的內容.可以用于許多不同的情況,特別是在你的腳本已經輸出信息后需要發送文件頭新的情況. 輸出控制函數不對使用 header() 或 setcookie() 發送的文件頭信息產生影響,只對那些類似于 echo() 和 PHP 代碼的數據塊有作用. 例


這些函數可以讓你控制你的腳本輸出的內容.可以用于許多不同的情況,特別是在你的腳本已經輸出信息后需要發送文件頭新的情況. 輸出控制函數不對使用 header() 或 setcookie() 發送的文件頭信息產生影響,只對那些類似于 echo() 和 PHP 代碼的數據塊有作用.

例 1. 控制輸出

<?php

ob_start();
echo "Hellon";

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()

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97