There are 7 values that can be returned. Here is a list of them and what each one meansblock: block special devicechar: character special devicedir: directoryfifo: FIFO (named pipe)file: regular filelink: symbolic linkunknown: unknown file type
(PHP 4, PHP 5, PHP 7, PHP 8)
filetype — Dosya türünü döndürür
dosyaismi
Dosya yolu.
Dosyanın türünü döndürür. Olası değerler: fifo, char, dir, block, link, file, socket ve unknown.
Bir hata oluşursa false
döner. eğer stat çağrısı başarısız olur veya
dosya türü anlaşılamazsa ayrıca, bir E_NOTICE
iletisi
çıktılanır.
Başarısızlık durumunda bir
E_WARNING
çıktılanır.
Örnek 1 - filetype() örneği
<?php
echo filetype('/etc/passwd');
echo "\n";
echo filetype('/etc/');
?>
Yukarıdaki örneğin çıktısı:
file dir
Bilginize: Bu işlevin sonuçları önbelleğe kaydedilir. Daha ayrıntılı bilgi clearstatcache() işlevinde bulunabilir.
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.
There are 7 values that can be returned. Here is a list of them and what each one meansblock: block special devicechar: character special devicedir: directoryfifo: FIFO (named pipe)file: regular filelink: symbolic linkunknown: unknown file type
filetype() does not work for files >=2GB on x86 Linux. You can use stat as a workarround:$type=trim(`stat -c%F $file`);Note that stat returns diffenerent strings ("regular file","directory",...)
I use the CLI version of PHP on Windows Vista. Here's how to determine if a file is marked "hidden" by NTFS:<?phpfunction is_hidden_file($fn) { $attr = trim(exec('FOR %A IN ("'.$fn.'") DO @ECHO %~aA')); if($attr[3] === 'h') return true; return false;}?>Changing <?php if($attr[3] === 'h') ?> to <?php if($attr[4] === 's') ?> will check for system files.This should work on any Windows OS that provides DOS shell commands.