Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Полезные функции для работы с файловой системой

Работа добавлена на сайт samzan.net: 2015-07-10

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 21.5.2024

Полезные функции для работы с файловой системой

Эта статья фактически краткий справочник по функциям для работы с файлами. Описываемые функции редко кто использует, но это не значит, что они бесполезны. Напротив, они очень даже полезны... Но они описываются далеко не в каждом учебнике по PHP.

file_exists

Функция file_exists() проверяет, существует ли файл в локальной файловой системе. Если файл существует, то функция возвращает истину, а если нет, то ложь. Пример:

if (! file_exists("somefile.php") ) { echo "Файл не существует!; }

is_file

Эта функия по сути делает ту же работу, что и file_exists, но она более надежна, т.к. проверяет не только существование заданного файла, но и файл ли это (вдруг дирректория?), и можно ли производить с ним операции записи/чтения. Пример:

if (! is_file("somefile.php") ) {echo "Это неправильный файл, либо в него нельзя писать/читать"; }

else {echo "Все ok, это нормальный файл";}

filesize

Как можно догадаться из названия, эта функция нужна для определения размера файла (в локальной файловой системе). Она возвращает размер файла в байтах или возвращает FALSE, если возникла ошибка. Пример:

$fsize = filesize("somefile.txt");

echo "Размер файла $fsize";

is_writeable

Эта функция проверяет, существует ли заданный файл и можно ли в него писать. Пример:

if (is_writeable("somefile.txt") ) {echo "В этот файл можно писать";}

else {echo "Файла не существует, либо в него нельзя писать";}

is_readable

Эта функция позволяет убедиться, что файл доступен для чтения (если он существует).

if (is_readable("somefile.txt") ) {echo "Этот файл доступен для чтения";}

else {echo "Файла не существует, либо его нельзя прочитать с текущими правами";}

readfile

В большинстве скриптов, которые я видел, чтение из файла осуществлялось с помощью функции fgets либо fread. При этом нужно было перед этим открыть а после закрыть. Но есть функция readfile, которая позволяет сэкономить пару инструкций. Она читает содержимое файла и перенаправляет в стандартный поток вывода (обычно браузер). Пример:

readfile("somefile.txt");

Все содержимое файла будет выведено в файле.

basename

Функция выделяет имя файла из переданного ей полного пути. Пример:

$filename = basename("/usr/brutus/file.txt");

echo $filename; //будет выведено "file.txt"

getlastmod

Функция возвращает дату последней модификации файла, из которого эта функция вызывается. Пример:

echo "Последнее обновление: ".date("d.m.Y @ H:i:s", getlastmod() );

Работа с каталогами

is_dir

Функция проверяет, является ли заданный файл каталогом. Синтаксис:

bool is_dir (string filename);

Возвращает TRUE если это каталог и FALSE если это файл

dirname

Эта функция извлекает путь до полного имени файла, подобно функции basename. Синтаксис:

string dirname ($string path);

opendir

Функция открывает заданный каталог и возвращает его идентификатор для работы с ним подобно функции fopen. Синтаксис:

int opendir (string path);

closedir

Функция закрывает манипулятор каталога подобно функции fclose. Синтаксис:

void closedir (int resource_handle);

readdir

Функция возвращает очередной элемент каталога. Синтаксис:

string readdir (int resource_handle);

Пример:

$dp = opendir('somedir');

while ($file = readdir($dp) ) {

echo $file."

";

}

closedir($dp);

rewinddir

Функция переводит указатель текущей позиции в начало каталога. К примеру функция readdir будет читать каталог с начала. Синтаксис:

void rewinddir (int resource_handle);

chdir

Функция осуществляет переход в заданный каталог. Синтаксис:

int chdir(string path);

mkdir

Функция аналогична однименной команде Unix - она создает каталог с заданным именем. Синтаксис:

int mkdir (string path, int mode);

Mode определяет разрешения, которые будут присвоены каталогу после создания.

Функции для работы с правами файла

Функции, которые будут описаны ниже, работают только в UNIX like системах.

filegroup

Эта функция возвращает идентификатор группы-владельца заданного файла. Синтаксис:

int filegroup (string filename);

fileperms

Функция возвращает разрешения (permissions) файла или FALSE в случае ошибки. Синтаксис:

int fileperm (string filename);

fileowner

Функция возвращает идентификатор владельца заданного файла. Синтаксис:

int fileowner (string filename);

chgrp

Функция пытается сменить группу-владельца данного файла. Синтаксис

int chgrp (string filename, mixed group);

chmod

Функция пытается изменить разрешения файла. Синтаксис:

int chmod (string filename, int permissions);

Замечание: параметр permissions должен состоять из четырех целых чисел, напрмер 0776.

chown

Функция chown пытается сменить владельца файла. Синтаксис:

int chown (string filename, mixed user);

stat

Эта функция возвращает массив с подробной информацией о файле. Синтаксис:

array stat (string filename);

Элементы, возвращаемые функцией:

0 - Устройство

1 - Индексный узел (inode)

2 - Режим защиты индексного угла

3 - Количество ссылок

4 - Идентификатор владельца

5 - Идентификатор группы владельца

6 - Тип устройства индексного узла

7 - Размер в байтах

8 - Время последнего обращения к файлу

9 - Время последней модификации файла

10 - Время последнего изменения

11 - Размер блока при выводе/вводе в файловой системе

12 - Количество выделенных блоков

Список литературы

Для подготовки данной работы были использованы материалы с сайта http://www.soch.imperium.by




1. лекции пользовались колоссальным успехом во всем мире
2. Слово о полку Ігоревім написано в- б між 1185 та 1188 рр 13
3. Крэш и восстановление диска
4. зарисовки В общемто в эмоциях преобладает злость
5. и анеуплоидов Полиплоидия ~ изменение числа наборов хромосом кратное гаплоидному набору n
6. Производство товаров и услуг как основная функция фирмы. Факторы производства
7. Лабораторна робота 11 Мета- Використовувати форми і запити при створенні вебсторінок
8. Тема дворянской усадьбы в романе Тургенева Отцы и дети
9. темах. Общенаучные предпосылки.
10. 5282610 I Область применения 1
11. Основы банковского дела
12. 1 Использование нецензурной лексики и брани; 1
13. является осознанной энергозатратной целесообразной рациональной 2 требует приложений усилий и 3 я
14. Новые лекарственные формы
15. Нейролингвистическое программирование - мнение психолога
16. от 20г Председатель Утверждаю зам
17. РЕФЕРАТ дисертації на здобуття наукового ступеня кандидата юридичних наук Київ.html
18. Инновационные направления развития системы физического воспитания детей дошкольного возраста
19. Шанырак организованная заведующим выставочного зала Скорик А
20. История возникновения и развития российской прокуратуры