关于PHP 流的一些整体情况,可以先看看 了解PHP中Stream(流)的概念与用法 这篇文章。
这个chapter会将上面文章提到的一些知识点细化,再补充一些没提到的知识点。
PHP 使用 <scheme>://<target> 这样的格式来进行 stream 的操作。比如使用 file:// 协议来访问文件系统:
readfile('/path/to/somefile.txt') readfile('file:///path/to/somefile.txt') //两者是等价的
使用下面的方法即可打印出PHP内置的流:
$streamlist = stream_get_filters(); print_r($streamlist);
输出:
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.* [11] => bzip2.* )
使用下面的方法即可查看PHP内置支持的协议和封装协议:
print_r(stream_get_wrappers());
输出:
Array ( [0] => php [1] => file [2] => glob [3] => data [4] => http [5] => ftp [6] => zip [7] => compress.zlib [8] => compress.bzip2 [9] => phar )
获取本地的socket支持情况则可以这样:
print_r(stream_get_transports());
输出:
Array ( [0] => tcp [1] => udp ) // 或者是这样 Array ( [0] => tcp [1] => udp [2] => unix [3] => udg [4] => ssl [5] => sslv3 [6] => sslv2 [7] => tls ) //transports
等等。
现代魔法 推荐于 2013-02-27 10:23