php streams擴充套件學習

2022-03-18 19:25:46 字數 1456 閱讀 2006

一. streams是幹嘛的:

用於統一檔案、網路、資料壓縮等類檔案操作方式,並為這些類檔案操作提供一組通用的函式介面。

二. stream是具有流式行為的資源物件,這個物件有乙個包裝類 例如:

//返回所有可用流包裝器的名稱

/*array

([0] => php /** 它是php用來處理io流的包裝類,如php://stdin php://stdout **/[

)*/三. php的預設包裝類就是file:

//;; 所以readfile('/path/to/somefile.txt')或者readfile('file:

///path/to/somefile.txt'),這兩種方式是等效的

四. 註冊自己的包裝器(自定義 協議處理器和流),用於所有其它的檔案系統函式中(例如 fopen() , fread() 等)

五. php還可以通過context和filter對包裝類進行修飾和增強。

1. 關於context,如php通過stream_context_create()來設定獲取檔案超時時間

2. 關於filter過濾器,首先來看看php有哪些內建的過濾器:

print_r(stream_get_filters());

/*array

([0] => convert.iconv.*

[1] => mcrypt.*

[2] => mdecrypt.*

[3] => string.rot13

[4] => string.toupper

[5] => string.tolower

[6] => string.strip_tags

[7] => convert.*

[8] => consumed

[9] => dechunk

[10] => zlib.*

)*/3. 自定義的過濾器 通過stream_filter_register()和內建的php_user_filter可建立自定義的過濾器

9 20 擴充套件學習

login shell 與 non login shell 的區別 1 當你直接在機器 login 介面登陸 使用 ssh登陸或者 su 切換使用者登陸時,bash profile 會被呼叫來初始化 shell 環境 note bash profile 檔案預設呼叫 bashrc 檔案 bash p...

Vue學習擴充套件

vue學習擴充套件 string原始方法 es6字串擴充套件api 結構表示式 let arr 1,2,3 es6通過攝製角標來獲取值 物件 const person 解構表示式獲取值 const person 列印 函式簡寫方式 1.定義乙個加法的方法 傳入兩個引數a b 計算a b的結果並返回 ...

php擴充套件學習筆記

要執行乙個web指令碼語言需要三個部分 1 分析輸入的 並翻譯和執行 2 功能部分,執行語言的功能要求 3 與web伺服器對話部分 zend執行第一部分和第二部分的一小部,php執行其餘部分。zend是語言的核心,根據一些預先定義的函式執行一些基本的功能。php包括所有的外部功能模組。php的擴充套...