PHP 8.3.4 Released!

is_readable

(PHP 4, PHP 5, PHP 7, PHP 8)

is_readableBir dosyanın mevcut ve okunabilir olup olmadığını söyler

Açıklama

is_readable(string $dosyaismi): bool

Bir dosyanın mevcut ve okunabilir olup olmadığını söyler.

Bağımsız Değişkenler

dosyaismi

Dosyanın yolu.

Dönen Değerler

dosyaismi ile belirtilen dosya mevcutsa ve okunabilirse true aksi takdirde false döndürür.

Hatalar/İstisnalar

Başarısızlık durumunda bir E_WARNING çıktılanır.

Örnekler

Örnek 1 - is_readable() örneği

<?php
$dosya
= 'dnm.txt';
if (
is_readable($dosya)) {
echo
'Dosya okunabilir';
} else {
echo
'Dosya okunamaz';
}
?>

Notlar

PHP'nin sadece HTTP sunucusunun aidiyetinde çalıştığı kullanıcının sahibi olduğu dosyalara erişebildiği unutulmamalıdır.

Bilginize: Bu işlevin sonuçları önbelleğe kaydedilir. Daha ayrıntılı bilgi clearstatcache() işlevinde bulunabilir.

İpucu

PHP 5.0.0 sürümünden itibaren bu işlev bazı URL sarmalayıcıları ile kullanılabilmektedir. stat() ailesini destekleyen sarmalayıcıların listesi Desteklenen Protokoller ve Sarmalayıcılar başlığı altında bulunabilir.

Bilginize:

Sınama etkin kullanıcı veya grup kimliği ile değil gerçek kullanıcı veya grup kimliği ile yapılır.

Bu işlev dizinler için true döndürebilir. Dosyalaral dizinler arasından ayrım yapabilmek için is_dir() işlevi kullanılabilir.

Ayrıca Bakınız

  • is_writable() - Dosyanın yazılabilir kipte ise bunu doğrular
  • file_exists() - Bir dosya veya dizinin mevcut olup olmadığına bakar
  • fgets() - Dosya tanıtıcısından bir satır döndürür

add a note

User Contributed Notes 4 notes

up
9
jo at durchholz dot org
18 years ago
DrTebi at yahoo dot com is wrong. is_readable() checks whether you can do file_get_contents() or similar calls, no more, no less. If the location given returns a 500 or 403 error, you can still read() that (you'll simply get the error page), but it's still read()able. Using is_readable to check the validity of a URL is simply the wrong function.
up
1
pgl at yoyo dot org
14 years ago
Note that is_readable() will return false for streams, eg, php://stdin.
up
0
arikan134 at gmail dot com
8 years ago
is readable recursively. Check all sub directories and files readable
<?php
function is_readable_r($dir) {
if (
is_dir($dir)) {
if(
is_readable($dir)){
$objects = scandir($dir);
foreach (
$objects as $object) {
if (
$object != "." && $object != "..") {
if (!
is_readable_r($dir."/".$object)) return false;
else continue;
}
}
return
true;
}else{
return
false;
}

}else if(
file_exists($dir)){
return (
is_readable($dir));

}
}

?>
up
-43
Anonymous
18 years ago
Sometimes in situations where file_exists fails (returns false even though the file does exist) stat will work.
To Top