Stream Classes
Stream Filters
Streams
PHP Manual

# Predefined Constants

The constants below are defined by this extension, and will only be available when the extension has either been compiled into PHP or dynamically loaded at runtime.

Constant | Description
--- | ---
`STREAM_FILTER_READ` * | Used with stream_filter_append() and stream_filter_prepend() to indicate that the specified filter should only be applied when reading
`STREAM_FILTER_WRITE` * | Used with stream_filter_append() and stream_filter_prepend() to indicate that the specified filter should only be applied when writing
`STREAM_FILTER_ALL` * | This constant is equivalent to `STREAM_FILTER_READ | STREAM_FILTER_WRITE`
`PSFS_PASS_ON` * | Return Code indicating that the userspace filter returned buckets in `$out`.
`PSFS_FEED_ME` * | Return Code indicating that the userspace filter did not return buckets in `$out` (i.e. No data available).
`PSFS_ERR_FATAL` * | Return Code indicating that the userspace filter encountered an unrecoverable error (i.e. Invalid data received).
`PSFS_FLAG_NORMAL` | Regular read/write.
`PSFS_FLAG_FLUSH_INC` | An incremental flush.
`PSFS_FLAG_FLUSH_CLOSE` | Final flush prior to closing.
`STREAM_USE_PATH` | Flag indicating if the stream used the include path.
`STREAM_REPORT_ERRORS` | Flag indicating if the wrapper is responsible for raising errors using trigger_error() during opening of the stream. If this flag is not set, you should not raise any errors.
`STREAM_CLIENT_ASYNC_CONNECT` * | Open client socket asynchronously. This option must be used together with the `STREAM_CLIENT_CONNECT` flag. Used with stream_socket_client().
`STREAM_CLIENT_CONNECT` * | Open client socket connection. Client sockets should always include this flag. Used with stream_socket_client().
`STREAM_CLIENT_PERSISTENT` * | Client socket opened with stream_socket_client() should remain persistent between page loads.
`STREAM_SERVER_BIND` * | Tells a stream created with stream_socket_server() to bind to the specified target. Server sockets should always include this flag.
`STREAM_SERVER_LISTEN` * | Tells a stream created with stream_socket_server() and bound using the `STREAM_SERVER_BIND` flag to start listening on the socket. Connection-orientated transports (such as TCP) must use this flag, otherwise the server socket will not be enabled. Using this flag for connect-less transports (such as UDP) is an error.
`STREAM_NOTIFY_RESOLVE` * | A remote address required for this stream has been resolved, or the resolution failed. See `severity` for an indication of which happened.
`STREAM_NOTIFY_CONNECT` | A connection with an external resource has been established.
`STREAM_NOTIFY_AUTH_REQUIRED` | Additional authorization is required to access the specified resource. Typical issued with `severity` level of `STREAM_NOTIFY_SEVERITY_ERR`.
`STREAM_NOTIFY_MIME_TYPE_IS` | The mime-type of resource has been identified, refer to `message` for a description of the discovered type.
`STREAM_NOTIFY_FILE_SIZE_IS` | The size of the resource has been discovered.
`STREAM_NOTIFY_REDIRECTED` | The external resource has redirected the stream to an alternate location. Refer to `message`.
`STREAM_NOTIFY_PROGRESS` | Indicates current progress of the stream transfer in `bytes_transferred` and possibly `bytes_max` as well.
`STREAM_NOTIFY_COMPLETED` * | There is no more data available on the stream.
`STREAM_NOTIFY_FAILURE` | A generic error occurred on the stream, consult `message` and `message_code` for details.
`STREAM_NOTIFY_AUTH_RESULT` | Authorization has been completed (with or without success).
`STREAM_NOTIFY_SEVERITY_INFO` | Normal, non-error related, notification.
`STREAM_NOTIFY_SEVERITY_WARN` | Non critical error condition. Processing may continue.
`STREAM_NOTIFY_SEVERITY_ERR` | A critical error occurred. Processing cannot continue.
`STREAM_IPPROTO_ICMP` + | Provides a ICMP socket.
`STREAM_IPPROTO_IP` + | Provides a IP socket.
`STREAM_IPPROTO_RAW` + | Provides a RAW socket.
`STREAM_IPPROTO_TCP` + | Provides a TCP socket.
`STREAM_IPPROTO_UDP` + | Provides a UDP socket.
`STREAM_PF_INET` + | Internet Protocol Version 4 (IPv4).
`STREAM_PF_INET6` + | Internet Protocol Version 6 (IPv6).
`STREAM_PF_UNIX` + | Unix system internal protocols.
`STREAM_SOCK_DGRAM` + | Provides datagrams, which are connectionless messages (UDP, for example).
`STREAM_SOCK_RAW` + | Provides a raw socket, which provides access to internal network protocols and interfaces. Usually this type of socket is just available to the root user.
`STREAM_SOCK_RDM` + | Provides a RDM (Reliably-delivered messages) socket.
`STREAM_SOCK_SEQPACKET` + | Provides a sequenced packet stream socket.
`STREAM_SOCK_STREAM` + | Provides sequenced, two-way byte streams with a transmission mechanism for out-of-band data (TCP, for example).
`STREAM_SHUT_RD` | Used with stream_socket_shutdown() to disable further receptions. Added in PHP 5.2.1.
`STREAM_SHUT_WR` | Used with stream_socket_shutdown() to disable further transmissions. Added in PHP 5.2.1.
`STREAM_SHUT_RDWR` | Used with stream_socket_shutdown() to disable further receptions and transmissions. Added in PHP 5.2.1.
`STREAM_CAST_FOR_SELECT` | Stream casting, for when stream_select() is calling stream_cast().
`STREAM_CAST_AS_STREAM` | Stream casting, when stream_cast() is called otherwise (see above).

> Note: The constants marked with * are just available since PHP 5.0.0.

> Note: The constants marked with + are available since PHP 5.1.0 and are meant to be used with stream_socket_pair(). Please note that some of these constants might not be available in your system.

Stream Classes
Stream Filters
Streams
PHP Manual