stream_context_get_default

(PHP 5 >= 5.1.0, PHP 7, PHP 8)

stream_context_get_defaultObtém o contexto padrão de fluxo

Descrição

stream_context_get_default(?array $options = null): resource

Retorna o contexto padrão de fluxo que é usado sempre que operações de arquivos (fopen(), file_get_contents(), etc.) são chamadas sem parâmetro de contexto. Opções para o contexto padrão podem ser opcionalmente especificadas com esta função usando a mesma sintaxe de stream_context_create().

Parâmetros

options
options deve ser um array associativo de arrays associativos no formato $arr['empacotador']['opcao'] = $valor ou null.

Valor Retornado

Um recurso do tipo resource de contexto de fluxo.

Registro de Alterações

Versão Descrição
8.0.0 options agora pode ser nulo.

Exemplos

Exemplo #1 Usando stream_context_get_default()

<?php
$default_opts
= array(
'http'=>array(
'method'=>"GET",
'header'=>"Accept-language: en\r\n" .
"Cookie: foo=bar",
'proxy'=>"tcp://10.54.1.39:8000"
)
);


$alternate_opts = array(
'http'=>array(
'method'=>"POST",
'header'=>"Content-type: application/x-www-form-urlencoded\r\n" .
"Content-length: " . strlen("baz=bomb"),
'content'=>"baz=bomb"
)
);

$default = stream_context_get_default($default_opts);
$alternate = stream_context_create($alternate_opts);

/* Envia uma requisição GET normal para o servidor proxy em 10.54.1.39
* para www.example.com usando as opções de contexto especificadas em $default_opts
*/
readfile('http://www.example.com');

/* Envia uma requisição POST diretamente para www.example.com
* usando as opções de contexto especificadas em $alternate_opts
*/
readfile('http://www.example.com', false, $alternate);

?>

Veja Também

add a note add a note

User Contributed Notes 1 note

up
1
RQuadling at GMail dot com
17 years ago
If you are using stream_context_get_default() and are still finding that some functions do not work, make sure that they are not based upon the libxml functions (DOM, SimpleXML and XSLT). These require their own context.

You can easily set them using the following code ...

<?php
// Define the default, system-wide context.
$r_default_context = stream_context_get_default
   
(
    array
        (
       
'http' => array
            (
// All HTTP requests are passed through the local NTLM proxy server on port 8080.
           
'proxy' => 'tcp://127.0.0.1:8080',
           
'request_fulluri' => True,
            ),
        )
    );

// Though we said system wide, some extensions need a little coaxing.
libxml_set_streams_context($r_default_context);
?>
To Top