Appendix I. List of Supported Protocols/Wrappers

Table of Contents
HTTP and HTTPS
FTP and FTPS
PHP input/output streams
Compression Streams

The following is a list of the various URL style protocols that PHP has built-in for use with the filesystem functions such as fopen() and copy(). In addition to these wrappers, as of PHP 4.3, you can write your own wrappers using PHP script and stream_register_wrapper().

HTTP and HTTPS

PHP 3, PHP 4. https:// since PHP 4.3

Allows read-only access to files/resources via HTTP 1.0, using the HTTP GET method. A Host: header is sent with the request to handle name-based virtual hosts. If you have configured a user_agent string using your ini file or the stream context, it will also be included in the request.

Redirects have been supported since PHP 4.0.5; if you are using an earlier version you will need to include trailing slashes in your URLs.

The stream allows access to the body of the resource; the headers are stored in the $http_response_header variable. Since PHP 4.3, the headers are available using stream_get_meta_data().

HTTP connections are read-only; you cannot write data or copy files to an HTTP resource.

Note: HTTPS is supported starting from PHP 4.3, if you have compiled in support for OpenSSL.