Реферат по предмету "Информатика, программирование"


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

Эта статья фактически краткий справочник по функциям для работы с файлами. Описываемые функции редко кто использует, но это не значит, что они бесполезны. Напротив, они очень даже полезны... Но они описываются далеко не в каждом учебнике по 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 - Количество выделенных блоков



Не сдавайте скачаную работу преподавателю!
Данный реферат Вы можете использовать для подготовки курсовых проектов.

Поделись с друзьями, за репост + 100 мильонов к студенческой карме :

Пишем реферат самостоятельно:
! Как писать рефераты
Практические рекомендации по написанию студенческих рефератов.
! План реферата Краткий список разделов, отражающий структура и порядок работы над будующим рефератом.
! Введение реферата Вводная часть работы, в которой отражается цель и обозначается список задач.
! Заключение реферата В заключении подводятся итоги, описывается была ли достигнута поставленная цель, каковы результаты.
! Оформление рефератов Методические рекомендации по грамотному оформлению работы по ГОСТ.

Читайте также:
Виды рефератов Какими бывают рефераты по своему назначению и структуре.