stream_wrapper_register
(PHP 4 >= 4.3.2, PHP 5)
stream_wrapper_register — Registra una envoltura de URL implementada como una clase de PHP
Descripción
$protocol
, string $classname
[, int $flags = 0
] )Permite implementar sus propios gestores de protocolo y flujos para usarlos con todas las demás funciones de sisitema de archivos (tales como fopen(), fread() etc.).
Parámetros
-
protocol -
El nombre de la envoltura a ser registrada.
-
classname -
El nombre de la clase que implementa
protocol. -
flags -
Debería ser establecido a
STREAM_IS_URLsiprotocoles un protocolo de URL. Por defecto es 0, flujo local.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error.
stream_wrapper_register() devolverá FALSE si
protocol ya tiene un gestor.
Historial de cambios
| Versión | Descripción |
|---|---|
| 5.2.4 |
Añadido el parámetro flags.
|
Ejemplos
Ejemplo #1 Cómo registrar una envoltura de flujo
<?php
$existed = in_array("var", stream_get_wrappers());
if ($existed) {
stream_wrapper_unregister("var");
}
stream_wrapper_register("var", "VariableStream");
$mivar = "";
$fp = fopen("var://mivar", "r+");
fwrite($fp, "línea1\n");
fwrite($fp, "línea2\n");
fwrite($fp, "línea3\n");
rewind($fp);
while (!feof($fp)) {
echo fgets($fp);
}
fclose($fp);
var_dump($mivar);
if ($existed) {
stream_wrapper_restore("var");
}
?>
El resultado del ejemplo sería:
línea1 línea2 línea3 string(24) "línea1 línea2 línea3 "
Ver también
- La clase prototipo streamWrapper
- Ejemplo de clase registrada como envoltura de flujo
- stream_wrapper_unregister() - Deja de registrar una envoltura de URL
- stream_wrapper_restore() - Restablece una envoltura incluida que se dejó de registrar previamente
- stream_get_wrappers() - Recupera la lista de los flujos registrados