(PHP 4 >= 4.3.2, PHP 5, PHP 7)
stream_wrapper_register — Register a URL wrapper implemented as a PHP class
stream_wrapper_register ( string $protocol , string $classname [, int $flags = 0 ] ) : bool
Allows you to implement your own protocol handlers and streams for use with all the other filesystem functions (such as fopen(), fread() etc.).
protocol
The wrapper name to be registered.
classname
The classname which implements the protocol.
flags
Should be set to STREAM_IS_URL if protocol is a URL protocol. Default is 0, local stream.
Returns true on success or false on failure.
stream_wrapper_register() will return false if the protocol already has a handler.
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 "
© 1997–2020 The PHP Documentation Group
Licensed under the Creative Commons Attribution License v3.0 or later.
https://www.php.net/manual/en/function.stream-wrapper-register.php