Ошибка: Failed to parse the Currency Converter XML document.
$16 211.17


Ошибка: Failed to parse the Currency Converter XML document.
$45 168.71


Ошибка: Failed to parse the Currency Converter XML document.
$1 501.38


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

Эта статья фактически краткий справочник по функциям для работы с файлами.

Описываемые функции редко кто использует, но это не значит, что они бесполезны.

Напротив, они очень даже полезны... Но они описываются далеко не в каждом учебнике по 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);

op endir
Функция открывает заданный каталог и возвращает его идентификатор для работы с ним подобно функции fopen. Синтаксис:
int op endir (string path);

closedir
Функция закрывает манипулятор каталога подобно функции fclose. Синтаксис:
void closedir (int resource_handle);

readdir
Функция возвращает очередной элемент каталога. Синтаксис:
string readdir (int resource_handle);
Пример:

$dp = op endir(«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 - Количество выделенных блоков

 

Интересное

Эксклюзив: пять основ...
Довольно старый принцип, когда Microsoft базирует новую операционную систему на центральных приоритетах. И этот принцип вернулся. Оглядываясь назад, первоначальной основой Longhorn был Avalon...
Подробнее...
Быстродействие FAT и NTFS
В этой статье я попытаюсь дать оценку быстродействию файловых систем, используемых в операционных системах Windows95/98/ME, а также Windows NT/2000. Статья не содержит графиков и результатов...
Подробнее...
Установка Windows Server...
Семейство продуктов Windows Server 2003 берет все самое лучшее от технологии ОС Windows 2000 Server, упрощая при этом развертывание, управление и использование.В результате пользователь получает...
Подробнее...
Словарь юниксоида
В связи с тем, что зачастую в статьях приходится пользоваться специфическими для линуксоида терминами, непонятными для новичка, я решил составить маленький словарь линуксоида, расписывающий...
Подробнее...
Восстановление Windows XP
1. Система не загружается, что делать? Восстановить систему в XP будет гораздо проще, если заранее об этом позаботиться. Наиболее радикальным методом будет сохранение всех основных системных...
Подробнее...
Советы, решившиму купить...
Знания и умения, позволяющие уверенно чувствовать себя за клавиатурой ПК, нельзя почерпнуть из программы вечерних новостей, занять в долг у «шибко грамотного» соседа или получить «обучением во...
Подробнее...
Как выбрать кресло для офиса?
Верный выбор рабочего офисного кресла – залог здоровья и нормальной работоспособности в течение долгих лет. Требования к таким креслам идентичны по всем своим характеристикам требованиям всей...
Подробнее...
Прячем трафик: техника...
До сих пор рассматриваемые нами способы маскировки трафика сводились к сокрытию сетевых соединений, но на физическом уровне весь левый трафик элементарно обнаруживался сниферами и прочими...
Подробнее...
Как правильно создать...
Наверняка, вам часто приходится закрывать «непрошеные» окна броузера, открывающиеся во время навигации по сети. Большинство пользователей (и я в том числе) ненавидят всплывающие окна, которые...
Подробнее...
Как узнать размер базы...
В этой небольшой статье вы узнаете, как получить размер вашей базы данных (БД) MySQL используя язык программирования PHP.Для начала нам потребуется простая функция formatfilesize(), которая будет...
Подробнее...