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 — Retourne le type de fichier
filename
Chemin vers le fichier.
Retourne le type du fichier. Les réponses possibles sont :
fifo
, char
, dir
,
block
, link
, file
socket
et unknown
.
Retourne false
en cas d'erreur.
filetype() va aussi émettre une erreur
E_NOTICE
si l'appel stat échoue,
ou si le type de fichier est inconnu.
En cas d'échec, une alerte de type E_WARNING
sera émise.
Exemple #1 Exemple avec filetype()
<?php
echo filetype('/etc/passwd');
echo "\n";
echo filetype('/etc/');
?>
L'exemple ci-dessus va afficher :
file dir
Note: Les résultats de cette fonction sont mis en cache. Voyez la fonction clearstatcache() pour plus de détails.
À partir de PHP 5.0.0, cette fonction peut aussi être utilisée avec quelques protocoles url. Lisez Liste des protocoles et des gestionnaires supportés pour connaître les protocoles supportant la famille de fonctionnalités de stat().
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.