is_readable
is_readable($cesta)
Vrátí true, když soubor nebo složka existuje a PHP má právo je číst. Jinak vrátí false.
Parametry
- $cesta – cesta k souboru nebo složce.
Příklady
$soubor = sys_get_temp_dir() . "/garth-ukazka.txt"; file_put_contents($soubor, "Ahoj"); var_dump(is_readable($soubor)); // bool(true) // neexistující soubor var_dump(is_readable(sys_get_temp_dir() . "/neexistuje.txt")); // bool(false) // načtení s náhradní hodnotou $text = is_readable($soubor) ? file_get_contents($soubor) : ""; echo $text; // Ahoj unlink($soubor);
Na co si dát pozor
- Práva se posuzují pro uživatele, pod kterým běží PHP (na serveru obvykle uživatel webového serveru), ne pro váš účet na FTP.
- True neznamená, že čtení určitě projde. Soubor může mezitím zmizet nebo ho může zamknout jiný program. Výsledek čtení kontrolujte i tak.
- Na Windows PHP práva čtení prakticky nerozlišuje, rozdíly se projeví až na linuxovém serveru.
- Výsledek si PHP během skriptu pamatuje. Po změně práv jiným programem zavolejte clearstatcache().
Příbuzné funkce:
is_writable()
file_exists()
file_get_contents()