(PHP 4 >= 4.3.2, PHP 5, PHP 7)
stream_wrapper_register — Register a URL wrapper implemented as a PHP class
$protocol
, string $classname
[, int $flags
= 0
] )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.
Gibt bei Erfolg TRUE
zurück. Im Fehlerfall wird FALSE
zurückgegeben.
stream_wrapper_register() will return FALSE
if the
protocol
already has a handler.
Version | Beschreibung |
---|---|
5.2.4 |
Added the flags parameter.
|
Beispiel #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");
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
line1 line2 line3 string(18) "line1 line2 line3 "