(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.).
protocolThe 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 "