首頁 >後端開發 >php教程 >PHP快取機制

PHP快取機制

亚连
亚连原創
2018-05-10 10:25:084136瀏覽

在這裡,我們透過一個程式碼範例進一步了解PHP本身的快取機制,在未來的學習中,也會對快取這個概念有一個大致的了解。


使用php本身的快取機制

如果要測試php自己的快取機制, 需要設定php.ini 檔案

display_errors=On
output_buffering=Off
error_reporting= 设置错误级别

兩個緩衝區:outputbuffer與程式快取 
ob快取關閉以後就放到程式緩存,程式快取必須放到header後面,否則報錯

函數:

ob_start(); //开启缓存
ob_clean(); //清空 outputbuffer的内容
ob_end_clean(); //关闭ob缓存,同时清空
ob_flush(); //输出ob内容,并清空,但不关闭
ob_end_flush(); //把ob缓存的内容输出,并关闭ob
ob_get_contents();  //获取output_buffering的内容

測試題:

<?php 
ob_start();
echo "abc";
header("content-type:text/html;charset=utf-8");
echo "hello";
ob_clean();
echo "aa";
header("content-type:text/html;charset=utf-8");
?>

輸出:aa 
不錯誤 
沒有關閉,aa放入ob

<?php 
ob_start();
echo "abc";
header("content-type:text/html;charset=utf-8");
echo "hello";
ob_end_clean();
echo "aa";
header("content-type:text/html;charset=utf-8");
?>

輸出:aa 
報錯 
#aa放入的是程式快取

<?php 
ob_start();
echo "abc";
header("content-type:text/html;charset=utf-8");
echo "hello";
ob_flush();
echo "aa";
echo ob_get_contents();
?>

輸出:abchelloaaaa 
等待後面的一起輸出

<?php 
ob_start();
echo "abc";
header("content-type:text/html;charset=utf-8");
echo "hello";
ob_end_flush();
echo "aa";
echo ob_get_contents();
?>

輸出:abchelloaaabchelloaa 
最後關閉

#以上就是我整理的PHP自身的快取機制,希望今後的學習對大家有幫助。

相關文章:

必須要了解的php快取機制

##簡單的php快取類別分享php快取機制_php實例

PHP頁面靜態化學習筆記之三:使用PHP快取機製完成靜態化#

以上是PHP快取機制的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn