Retrieves header/meta data from streams/file pointers
Syntax
stream_get_meta_data ( resource $stream ) : array
Parameters
stream
The stream can be any stream created by fopen(), fsockopen() and pfsockopen().
Return
The result array contains the following items:
Item | Description |
---|---|
timed_out (bool) | TRUE if the stream timed out while waiting for data on the last call to fread() or fgets(). |
blocked (bool) | TRUE if the stream is in blocking IO mode. See stream_set_blocking(). |
eof (bool) | TRUE if the stream has reached end-of-file. Note that for socket streams this member can be TRUE even when unread_bytes is non-zero. To determine if there is more data to be read, use feof() instead of reading this item. |
wrapper_data (mixed) | wrapper specific data attached to this stream. See Supported Protocols and Wrappers for more information about wrappers and their wrapper data. |
wrapper_type (string) | a label describing the protocol wrapper implementation layered over the stream. See Supported Protocols and Wrappers for more information about wrappers. |
stream_type (string) | a label describing the underlying implementation of the stream. |
mode (string) | the type of access required for this stream. |
unread_bytes (int) | the number of bytes currently contained in the PHP's own internal buffer. Note: You shouldn't use this value in a script. |
seekable (bool) | whether the current stream can be seeked. |
uri (string) | the URI/filename associated with this stream. |
Examples
<? $filename = "https://www.php.net/"; $mode = "r"; $handle = fopen($filename, $mode); $return = stream_get_meta_data($handle); print_r($return); fclose($handle); ?>
Array ( [crypto] => Array ( [protocol] => TLSv1.2 [cipher_name] => ECDHE-RSA-AES128-GCM-SHA256 [cipher_bits] => 128 [cipher_version] => TLSv1.2 ) [timed_out] => [blocked] => 1 [eof] => [wrapper_data] => Array ( [0] => HTTP/1.1 200 OK [1] => Server: myracloud [2] => Date: Wed, 01 Feb 2023 10:10:05 GMT [3] => Content-Type: text/html; charset=utf-8 [4] => Connection: close [5] => Last-Modified: Wed, 01 Feb 2023 10:00:14 GMT [6] => Content-language: en [7] => Permissions-Policy: interest-cohort=() [8] => X-Frame-Options: SAMEORIGIN [9] => Set-Cookie: COUNTRY=NA%2C45.91.158.213; expires=Wed, 08-Feb-2023 10:10:05 GMT; Max-Age=604800; path=/; domain=.php.net [10] => Set-Cookie: LAST_NEWS=1675246205; expires=Thu, 01-Feb-2024 10:10:05 GMT; Max-Age=31536000; path=/; domain=.php.net [11] => Link: <https://www.php.net/index>; rel=shorturl [12] => Expires: Wed, 01 Feb 2023 10:10:05 GMT [13] => Cache-Control: max-age=0 ) [wrapper_type] => http [stream_type] => tcp_socket/ssl [mode] => r [unread_bytes] => 7536 [seekable] => [uri] => https://www.php.net/ )