php幾個函式

2021-06-20 12:34:56 字數 1747 閱讀 4584

ob_get_contents() 函式的用法

下面3個函式的用法

ob_get_contents();

ob_end_clean();

ob_start()

可以借助這幾個函式實現緩衝本地檔案,以及執行本地指令碼**。

使用ob_start()把輸出那同輸出到緩衝區,而不是到瀏覽器。

然後用ob_get_contents得到緩衝區的資料。

ob_start()在伺服器開啟乙個緩衝區來儲存所有的輸出。所以在任何時候使用echo ,輸出都將被加入緩衝區中,直到程式執行結束或者使用ob_flush()來結束。然後在伺服器中緩衝區的內容才會傳送到瀏覽器,由瀏覽器來解析顯示。

函式ob_end_clean 會清除緩衝區的內容,並將緩衝區關閉,但不會輸出內容。

此時得用乙個函式ob_get_contents()在ob_end_clean()前面來獲得緩衝區的內容。

這樣的話, 能將在執行ob_end_clean()前把內容儲存到乙個變數中,然後在ob_end_clean()後面對這個變數做操作。

這是eg:

ob_start(); // buf1

echo ' multiple ';

ob_start(); // buf2

echo ' buffers work ';

$buf2 = ob_get_contents();

ob_end_clean();

$buf1 = ob_get_contents();

ob_end_clean();

echo $buf1;

echo '

';echo $buf2;

call_user_func函式類似於一種特別的呼叫函式的方法,使用方法如下:

function a($b,$c)

call_user_func('a', "111","222");

call_user_func('a', "333","444");

//顯示 111 222 333 444

?>

呼叫類內部的方法比較奇怪,居然用的是array,不知道開發者是如何考慮的,當然省去了new,也是滿有新意的:

class a

}call_user_func(array("a", "b"),"111");

//顯示 111

?>

call_user_func_array函式和call_user_func很相似,只不過是換了一種方式傳遞了引數,讓引數的結構更清晰:

function a($b, $c)

call_user_func_array('a', array("111", "222"));

//顯示 111 222

?>

call_user_func_array函式也可以呼叫類內部的方法的

class classa

}call_user_func_array(array('classa','bc'), array("111", "222"));

//顯示 333

?>

call_user_func函式和call_user_func_array函式都支援引用,這讓他們和普通的函式呼叫更趨於功能一致:

function a(&$b)

$c = 0;

call_user_func('a', &$c);

echo $c;//顯示 1

call_user_func_array('a', array(&$c));

echo $c;//顯示 2

php幾個函式

php 3,php 4,php 5 dirname 返回路徑中的目錄部分 stringdirname string path 給出乙個包含有指向乙個檔案的全路徑的字串,本函式返回去掉檔名後的目錄名。在 windows 中,斜線 和反斜線 都可以用作目錄分隔符。在其它環境下是斜線 例子 1.dirna...

幾個常用的PHP函式

最近在看 發現以下是幾個比較實用的函式。1,取客戶端ip 檢視複製列印?這裡,如果使用多級 的使用者,真實ip是取不到的。2,字串擷取,支援中文 檢視複製列印?function getstrtruncate string length 80,etc str c return str etc else...

php 幾個函式理解

1,addslashes php 指令 magic quotes gpc 為 on 它主要是對所有的 get post 和 cookie 資料自動執行 addslashes 不要對已經被 magic quotes gpc 轉義過的 字串使用 addslashes 因為這樣會導致雙層轉義。遇到這種情況...