stream_wrapper_register

(PHP 4 >= 4.3.2, PHP 5, PHP 7, PHP 8)

stream_wrapper_registerRegistra um empacotador URL implementado como uma classe PHP

Descrição

stream_wrapper_register(string$protocol, string$class, int$flags = 0): bool

Permite a implementação de manipuladores de protocolo e fluxo do usuário para uso com todas as outras funções de sistemas de arquivos (como fopen(), fread() etc.).

Parâmetros

protocol

O nome do empacotador a ser registrado. Nomes de protocolos válidos devem conter somente caracteres alfanuméricos, pontos (.), sinais de adição (+) ou hífens (-).

class

O nome da classe que implementa o protocolo definido no parâmetro protocol.

flags

Deve ser definida para STREAM_IS_URL se protocol for um protocolo URL. O padrão é 0, fluxo local.

Valor Retornado

Retorna true em caso de sucesso ou false em caso de falha.

stream_wrapper_register() retornará false se protocol já tiver um manipulador.

Exemplos

Exemplo #1 Como registrar um empacotador de fluxo

<?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, "linha1\n");
fwrite($fp, "linha2\n");
fwrite($fp, "linha3\n");

rewind($fp);
while (!
feof($fp)) {
echo
fgets($fp);
}
fclose($fp);
var_dump($myvar);

if (
$existed) {
stream_wrapper_restore("var");
}

?>

O exemplo acima produzirá:

linha1 linha2 linha3 string(18) "linha1 linha2 linha3 "

Veja Também

To Top