<delect id="sj01t"></delect>
  1. <em id="sj01t"><label id="sj01t"></label></em>
  2. <div id="sj01t"></div>
    1. <em id="sj01t"></em>

            <div id="sj01t"></div>

            PHP中的流介紹

            時間:2024-07-31 08:57:07 PHP 我要投稿
            • 相關推薦

            關于PHP中的流介紹

              PHP是一種 HTML 內嵌式的語言,是一種在服務器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似于C語言,被廣泛地運用。

              概述

              流(streams)是PHP4.3版本引入的一個特性,主要是為了統一文件、sockets以及其他類似資源的工作方法。PHP4.3距今已經有很長時間了,但是很多程序員似乎都不能正確使用PHP中的流,當然這也包括我。以前也在一些程序中遇到過流的使用,如php://input,但是一直沒機會整理,今天就把這部分知識整理下。

              流是由PHP提供的資源,可以供我們透明的使用,而且流是一個非常強大的工具。適當的在程序中使用流,可以將我們的程序帶到一個新的高度。

              PHP手冊中對流的描述如下:

              復制代碼 代碼如下:

              Streams were introduced with PHP 4.3.0 as a way of generalizing file, network, data compression, and other operations which share a common set of functions and uses. In its simplest definition, a stream is a resource object which exhibits streamable behavior. That is, it can be read from or written to in a linear fashion, and may be able to fseek() to an arbitrary locations within the stream.

              每一種流都實現了一個包裝器(wrapper),包裝器包含一些額外的代碼用來處理特殊的協議和編碼。PHP提供了一些內置的包裝器,我們也可以很輕松的創建和注冊自定義的包裝器。我們甚至可以使用上下文(contexts)和過濾器來改變和增強包裝器。

              流基礎知識

              PHP中流的形式如:://。是包裝器的名字,的內容取決于不同的包裝器語法。

              默認的包裝器是file://,也就是說每次我們訪問文件系統的時候都使用了流。例如,我們可以使用如下兩種方式來讀取文件:readfile(/path/to/somefile.txt)和readfile(file:///path/to/somefile.txt),使用這兩種方式讀取文件,可以得到相同的結果。

              正如前面所說,PHP提供了一些內置的包裝器、協議和過濾器。查看我們的機器上安裝了哪些包裝器,可以使用如下幾個函數:

              復制代碼 代碼如下:

              var_dump(stream_get_transports());

              var_dump(stream_get_wrappers());

              var_dump(stream_get_filters());

              >

              我本地的環境輸出內容如下:

              復制代碼 代碼如下:

              array (size=8)

              0 => string tcp (length=3)

              1 => string udp (length=3)

              2 => string unix (length=4)

              3 => string udg (length=3)

              4 => string ssl (length=3)

              5 => string sslv3 (length=5)

              6 => string sslv2 (length=5)

              7 => string tls (length=3)

              array (size=12)

              0 => string https (length=5)

              1 => string ftps (length=4)

              2 => string compress.zlib (length=13)

              3 => string compress.bzip2 (length=14)

              4 => string php (length=3)

              5 => string file (length=4)

              6 => string glob (length=4)

              7 => string data (length=4)

              8 => string http (length=4)

              9 => string ftp (length=3)

              10 => string phar (length=4)

              11 => string zip (length=3)

              array (size=12)

            【PHP中的流介紹】相關文章:

            簡單分析PHP中序列化用法介紹08-15

            PHP中curl的使用實例07-31

            PHP中關于類的定義10-02

            PHP中函數的使用說明09-01

            PHP中的排序函數區別分析08-23

            簡單介紹php構造函數用法08-31

            php中dirname()和--FILE--常量的用法09-26

            PHP中date函數常用時間處理方法09-13

            PHP中MySQL、MySQLi和PDO的用法和區別07-01

            php中static靜態變量的使用方法06-11

            <delect id="sj01t"></delect>
            1. <em id="sj01t"><label id="sj01t"></label></em>
            2. <div id="sj01t"></div>
              1. <em id="sj01t"></em>

                      <div id="sj01t"></div>
                      黄色视频在线观看