stream_wrapper_register
(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)
stream_wrapper_register — Register a URL wrapper implemented as a PHP class
Description
Allows you to implement your own protocol handlers and streams for use with all the other filesystem functions (such as fopen(), fread() etc.).
Parameters
protocolThe wrapper name to be registered. Valid protocol names must contain alphanumerics, dots (.), plusses (+), or hyphens (-) only.
classThe classname which implements the
protocol.flagsShould be set to
STREAM_IS_URLifprotocolis a URL protocol. Default is 0, local stream.
Return Values
Returns true on success or false on failure.
stream_wrapper_register() will return false if the protocol already has a handler.
Examples
Example #1 How to register a stream wrapper
<?php
$existed = in_array("var", stream_get_wrappers());
if ($existed) {
stream_wrapper_unregister("var");
}
stream_wrapper_register("var", "VariableStream");
$myvar = "";
$fp = fopen("var://myvar", "r+");
fwrite($fp, "line1\n");
fwrite($fp, "line2\n");
fwrite($fp, "line3\n");
rewind($fp);
while (!feof($fp)) {
echo fgets($fp);
}
fclose($fp);
var_dump($myvar);
if ($existed) {
stream_wrapper_restore("var");
}
?>The above example will output:
line1 line2 line3 string(18) "line1 line2 line3 "
See Also
- The streamWrapper prototype class
- Example class registered as stream wrapper
- stream_wrapper_unregister() - Unregister a URL wrapper
- stream_wrapper_restore() - Restores a previously unregistered built-in wrapper
- stream_get_wrappers() - Retrieve list of registered streams
↑ and ↓ to navigate • Enter to select • Esc to close • / to open