Ce face get_resource_id
Fiecare resursă are un număr unic în timpul rulării scriptului. Înainte de PHP 8 se obținea cu (int) $resursa; get_resource_id face același lucru, mai clar și cu verificarea tipului.
În linia de comandă, STDIN, STDOUT și STDERR sunt primele resurse, cu numerele 1, 2 și 3.
Parametri
| Parametru | Descriere |
|---|---|
$resource |
Resursa. |
Ce returnează
Id-ul resursei.
Exemple
Exemplul 1: Id-urile unor resurse
<?php
echo get_resource_id(STDIN) . " " . get_resource_id(STDOUT) . " " . get_resource_id(STDERR) . "\n";
$f = fopen("php://memory", "r+");
var_dump(get_resource_id($f) === (int) $f);
Rezultat
1 2 3
bool(true)
Greșeli frecvente
- Salvezi id-ul ca să redeschizi resursa mai târziu. Id-ul este doar un număr; nu poți obține resursa înapoi din el.
Comenzi înrudite
get_resource_type: Returnează tipul unei resurse, de exemplu „stream” pentru un fișier deschis cu fopen.get_resources: Returnează toate resursele active, opțional doar pe cele de un anumit tip.spl_object_id: Returnează un număr unic care identifică un obiect, cât timp acel obiect există.