filetype

(PHP 4, PHP 5)

filetypeВозвращает тип файла

Описание

string filetype ( string $filename )

Возвращает тип указанного файла.

Список параметров

filename

Путь к файлу.

Возвращаемые значения

Возвращает тип файла. Возможными значениями являются fifo, char, dir, block, link, file, socket и unknown.

Возвращает FALSE в случае ошибки. filetype() также вызовет ошибку уровня E_NOTICE, если системный вызов stat завершится ошибкой или тип файла неизвестен.

Примеры

Пример #1 Пример использования функции filetype()

<?php

echo filetype('/etc/passwd');  // file
echo filetype('/etc/');        // dir

?>

Ошибки

В случае неудачного завершения работы генерируется ошибка уровня E_WARNING.

Примечания

Замечание: Результаты этой функции кэшируются. Более подробную информацию смотрите в разделе clearstatcache().

Подсказка

Начиная с PHP 5.0.0, эта функция также может быть использована с некоторыми обертками url. Список оберток, поддерживаемых семейством функций stat(), смотрите в Поддерживаемые протоколы и обработчики (wrappers).

Смотрите также

  • is_dir() - Определяет, является ли имя файла директорией
  • is_file() - Определяет, является ли файл обычным файлом
  • is_link() - Определяет, является ли файл символической ссылкой
  • file_exists() - Проверяет наличие указанного файла или каталога
  • mime_content_type() - Определяет MIME-тип содержимого файла (устаревшее)
  • pathinfo() - Возвращает информацию о пути к файлу
  • stat() - Возвращает информацию о файле

Коментарии

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
2004-03-10 19:11:22
http://php5.kiev.ua/manual/ru/function.filetype.html
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.
2008-11-21 19:29:09
http://php5.kiev.ua/manual/ru/function.filetype.html
Автор:
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",...)
2010-10-07 16:09:34
http://php5.kiev.ua/manual/ru/function.filetype.html

    Поддержать сайт на родительском проекте КГБ