Ce face stream_context_get_options
stream_context_get_options îți arată opțiunile puse cu stream_context_create sau stream_context_set_option, grupate pe wrapper: http, ssl, ftp.
Primește fie contextul, fie un stream deschis cu acel context (o conexiune de rețea sau o adresă web; fișierele locale nu păstrează contextul). Este folosită mai ales la depanare, ca să vezi ce setări ajung de fapt la cerere.
Parametri
| Parametru | Descriere |
|---|---|
$stream_or_context |
Un context creat cu stream_context_create sau un stream deschis. |
Ce returnează
Un tablou asociativ cu opțiunile, gol dacă nu există niciuna.
Exemple
Exemplul 1: Opțiunile unui context
<?php
$context = stream_context_create([
"http" => ["method" => "POST", "timeout" => 5],
]);
print_r(stream_context_get_options($context));
Rezultat
Array
(
[http] => Array
(
[method] => POST
[timeout] => 5
)
)
Exemplul 2: Opțiunile citite dintr-o conexiune
Contextul rămâne atașat conexiunilor de rețea, așa că opțiunile pot fi citite din stream. Fișierele locale nu păstrează contextul și returnează un tablou gol.
<?php
$server = stream_socket_server("tcp://127.0.0.1:0");
$context = stream_context_create(["socket" => ["tcp_nodelay" => true]]);
$client = stream_socket_client("tcp://" . stream_socket_get_name($server, false), $cod, $mesaj, 2, STREAM_CLIENT_CONNECT, $context);
print_r(stream_context_get_options($client));
file_put_contents("nota.txt", "Salut");
print_r(stream_context_get_options(fopen("nota.txt", "r", false, $context)));
Rezultat
Array
(
[socket] => Array
(
[tcp_nodelay] => 1
)
)
Array
(
)
Greșeli frecvente
- Aștepți să vezi valorile implicite (de exemplu timeout-ul de 60 de secunde). Funcția arată doar opțiunile setate explicit.
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_set_option / stream_context_set_options: Adaugă sau schimbă o opțiune într-un context de stream existent; set_options primește mai multe deodată.stream_context_get_params / stream_context_set_params: Citește și setează parametrii unui context: funcția de notificare (progres) și opțiunile.