filetype

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

filetypeLiefert den Typ einer Datei

Beschreibung

filetype(string $filename): string|false

Liefert den Typ der übergebenen Datei.

Parameter-Liste

filename

Pfad zu der Datei

Rückgabewerte

Gibt den Typ einer Datei zurück. Mögliche Werte sind fifo, char, dir, block, link, file, socket und unknown.

Gibt false zurück, wenn ein Fehler auftrat. filetype() erzeugt auch eine E_NOTICE-Meldung, wenn der stat-Aufruf fehlschlägt oder der Dateityp unbekannt ist.

Fehler/Exceptions

Im Fehlerfall wird eine E_WARNING ausgegeben.

Beispiele

Beispiel #1 filetype()-Beispiel

<?php

echo filetype('/etc/passwd');
echo
"\n";
echo
filetype('/etc/');

?>

Das oben gezeigte Beispiel erzeugt folgende Ausgabe:

file
dir

Anmerkungen

Hinweis: Die Ergebnisse dieser Funktion werden zwischengespeichert. Weitere Details sind bei clearstatcache() zu finden.

Tipp

Seit PHP 5.0.0 kann diese Funktion mit einigen URL-Wrappern benutzt werden. Schauen Sie in der Liste unter Unterstützte Protokolle und Wrapper nach, welcher Wrapper die Funktionalität von stat() unterstützt.

Siehe auch

  • is_dir() - Prüft, ob der angegebene Dateiname ein Verzeichnis ist
  • is_file() - Prüft, ob der Dateiname eine reguläre Datei ist
  • is_link() - Prüft, ob der Dateiname ein symbolischer Link ist
  • file_exists() - Prüft, ob eine Datei oder ein Verzeichnis existiert
  • mime_content_type() - Ermittelt den MIME-Typ des Inhalts einer Datei
  • pathinfo() - Liefert Informationen über einen Dateipfad
  • stat() - Sammelt Informationen über eine Datei

add a note

User Contributed Notes 3 notes

up
21
ruach at chpc dot utah dot edu
21 years ago
There are 7 values that can be returned. Here is a list of them and what each one means

block: block special device

char: character special device

dir: directory

fifo: FIFO (named pipe)

file: regular file

link: symbolic link

unknown: unknown file type
up
7
adlerweb
14 years ago
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",...)
up
-2
7r6ivyeo at mail dot com
16 years ago
I use the CLI version of PHP on Windows Vista. Here's how to determine if a file is marked "hidden" by NTFS:

<?php
function 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.
To Top