STREAM_WRAPPER_REGISTER(3) 1 STREAM_WRAPPER_REGISTER(3)
stream_wrapper_register - Register a URL wrapper implemented as a PHP class
SYNOPSIS
bool stream_wrapper_register (string $protocol, string $classname, [int $flags])
DESCRIPTION
Allows you to implement your own protocol handlers and streams for use with all the other filesystem functions (such as fopen(3), fread(3)
etc.).
PARAMETERS
o $protocol
- The wrapper name to be registered.
o $classname
- The classname which implements the $protocol.
o $flags
- Should be set to STREAM_IS_URL if $protocol is a URL protocol. Default is 0, local stream.
RETURN VALUES
Returns TRUE on success or FALSE on failure.
stream_wrapper_register(3) will return FALSE if the $protocol already has a handler.
CHANGELOG
+--------+------------------------------+
|Version | |
| | |
| | Description |
| | |
+--------+------------------------------+
| 5.2.4 | |
| | |
| | Added the $flags parameter. |
| | |
+--------+------------------------------+
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
");
fwrite($fp, "line2
");
fwrite($fp, "line3
");
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(3), stream_wrapper_restore(3),
stream_get_wrappers(3).
PHP Documentation Group STREAM_WRAPPER_REGISTER(3)