Ce face stream_context_get_default / stream_context_set_default
Când apelezi file_get_contents($url) fără context, PHP folosește contextul implicit. stream_context_set_default îi setează opțiuni, care se aplică apoi tuturor cererilor din script care nu primesc alt context: un User-Agent comun, un timeout, un proxy.
stream_context_get_default returnează acest context. Dacă îi dai un tablou de opțiuni, le adaugă înainte să-l returneze.
Parametri
| Parametru | Descriere |
|---|---|
$options |
Opțional. Opțiuni adăugate la contextul implicit, ca la stream_context_create. |
Ce returnează
Resursa contextului implicit (la ambele funcții).
Exemple
Exemplul 1: Un User-Agent pentru toate cererile
La început contextul implicit nu are opțiuni. După stream_context_set_default, orice file_get_contents fără context trimite antetul ales.
<?php
var_dump(stream_context_get_options(stream_context_get_default()));
stream_context_set_default([
"http" => ["user_agent" => "BlogulAnei/1.0", "timeout" => 10],
]);
print_r(stream_context_get_options(stream_context_get_default()));
Rezultat
array(0) {
}
Array
(
[http] => Array
(
[user_agent] => BlogulAnei/1.0
[timeout] => 10
)
)
Greșeli frecvente
- Setezi contextul implicit într-o bibliotecă. Schimbarea afectează toate cererile din script, inclusiv pe ale altui cod. Dă un context propriu fiecărui apel.
Comenzi înrudite
stream_context_create: Creează un set de opțiuni (metodă, antete, timeout) pentru file_get_contents, fopen și alte funcții de fișier.stream_context_get_options: Returnează opțiunile unui context de stream (sau ale contextului folosit de un stream deschis).file_get_contents: Citește tot conținutul unui fișier (sau al unei adrese URL) într-un text.