ホームページ  >  記事  >  バックエンド開発  >  PHPのstream_get_meta_dataの戻り値

PHPのstream_get_meta_dataの戻り値

PHPz
PHPzオリジナル
2016-05-16 09:00:042496ブラウズ

php stream_get_meta_data return value_php の基本

テスト コードは次のとおりです。

コードは次のとおりです。

<?php
$fp=fopen("http://www.sina.com.cn", 'r');
$stream_meta = stream_get_meta_data($fp);
print_r($stream_meta);
?>

ローカル マシンの出力は次のとおりです。

array
(
     [wrapper_data] => array
         (
             [0] => http/1.0 200 ok
             [1] => date: tue, 06 dec 2011 10:08:11 gmt
             [2] => server: apache
             [3] => last-modified: tue, 06 dec 2011 10:07:12 gmt
             [4] => accept-ranges: bytes
             [5] => x-powered-by: mod_xlayout/rc2
             [6] => cache-control: max-age=60
             [7] => expires: tue, 06 dec 2011 10:09:11 gmt
             [8] => vary: accept-encoding
             [9] => x-ua-compatible: ie=emulateie7
             [10] => content-type: text/html
             [11] => age: 26
             [12] => content-length: 675274
             [13] => x-cache: hit from xd33-98.hp08040037.sina.com.cn
             [14] => connection: close
         )
     [wrapper_type] => http
     [stream_type] => tcp_socket/ssl
     [mode] => r
     [unread_bytes] => 3759
     [seekable] =>  
     [uri] => http://www.sina.com.cn
     [timed_out] =>  
     [blocked] => 1
     [eof] =>  
)

説明

array stream_get_meta_data (int $fp)
次の情報を返します。既存のストリーム。 fopen()、fsockopen()、および pfsockopen() を介して確立された任意のストリームを指定できます。返される配列には次の項目が含まれます。

timed_out (bool) - fread() または fgets() への最後の呼び出しでデータの待機中にストリームがタイムアウトした場合は true。

blocked (bool) - ストリームがブロッキング io モードの場合は true。 stream_set_blocking() を参照してください。

eof (bool) - ストリームがファイルの終わりに到達した場合は true。ソケット ストリームの場合、unread_bytes がゼロ以外の場合でも true になる可能性があることに注意してください。さらに読み取り可能なデータがあるかどうかを判断するには、代わりに feof() を使用してこの項目の値を読み取ります。

unread_bytes (int) - php 自体の内部バッファーに現在あるバイト数。

注: この値をスクリプトで使用しないでください。

次の項目が php 4.3 で新たに追加されました:

stream_type (string) - 一个描述流底层实现的标注。 
wrapper_type (string) - 一个描述流的分层协议封装实现的标注。更多关于封装协议的信息见 支持的协议和封装协议。 
wrapper_data (mixed) - 当前流附加的封装协议数据。更多封装协议及其数据的信息见 支持的协议和封装协议。 
filters (array) - 包含有被叠加在当前流的任何过滤器名的数组。过滤器的文档见附录中的可用过滤器列表。

:

この関数は php 4.3 で導入されました。このバージョンより前は、socket_get_status() を使用して最初の 4 つの項目を取得でき、ソケットベースのストリームにのみ使用できました。

php 4.3 以降のバージョンでは、socket_get_status() はこの関数のエイリアスです。

注: この関数は、ソケット拡張ライブラリを通じて作成されたストリームでは使用できません。

次の項目が php 5.0 で新たに追加されました:

mode (string) - 对当前流所要求的访问类型(见 fopen() 中的表格 1)。 
seekable (bool) - 是否可以在当前流中定位。 
uri (string) - 与当前流关联的 URI 或文件名。

上記は、php stream_get_meta_data return value_php の基本的な内容です。その他の関連コンテンツについては、 php 中国語 web サイト (www.php.cn) にご注意ください。

【おすすめチュートリアル】

1. a php プログラミングの入門からマスターまでのビデオ チュートリアルの完全なセット
2. php オンライン マニュアル
3. ブートストラップ チュートリアル

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。