ROBOWEB : Документация по PHP : html, perl, cgi, php, css, 3dmax - 3D Studio русская документация с примерами программ, RTFM и описание протоколов, описание dreamweaver, все для вебдизайнера
Разработка сайтов, web дизайн - Центр Русского Дизайна HOD.RU
FLASH
3D Studio MAX
DreamWeawer FAQ
Изучение HTML
META тэги
CSS
Руководство по стилям
Спецификация WML (WAP)
Язык DHTML
Спецификация XML
Руководство по Java
Документация по JavaScript
Язык HOD Text Processor
Интерфейс CGI
Документация по Perl 5
Perl FAQ
Документация по PHP
PHP/FI 2.0
Документация по SQL
Базы данных
Доступ к БД

Рейтинг@Mail.ru Rambler's Top100

Веб дизайнеру
Каталог сайтов Axes.ru


 Руководство по РНР 3.0 - Функции файловой системы

Содержание
basename
chgrp
chmod
chown
clearstatcache
copy
dirname
fclose
feof
fgetc
fgets
fgetss
file
file_exists
fileatime
filectime
filegroup
fileinode
filemtime
fileowner
fileperms
filesize
filetype
fopen
fpassthru
fputs
fread
fseek
ftell
fwrite
is_dir
is_executable
is_file
is_link
is_readable
is_writeable
link
linkinfo
mkdir
pclose
popen
readfile
readlink
rename
rewind
rmdir
stat
lstat
symlink
tempnam
touch
umask
unlink

basename basename -- возвращает из полного пути имя файла
Описание
string basename(string path);

Получив строку, содержащую путь у файлу, данная функция возвратит базовое имя файла.

В Windows оба слеша - передний (/) и обратный (\) - используются как разделители при задании пути. В других окружениях это только передний слеш (/).

Пример 1. basename() example

$path = "/home/httpd/html/index.php3";
$file = basename($path); // $file устанавливается в "index.php3"

Смотри также: dirname()


chgrp chgrp -- изменить файловую группу
Описание
int chgrp(string filename, mixed group);

Пытается изменить группу файла filename на group. Только супервизор может изменить текущую группу на любую случайную; другие пользователи могут менять группу только на любую из тех, для которых они являются пользователями.

Возвращает true при успешном завершении; в противном случае - false.

В Windows ничего не происходит и возвращается true.

смотри также chown() и chmod().


chmod chmod -- изменить режим файла
Описание
int chmod(string filename, int mode);

Пытается изменить режим файла, указанного в filename на mode.

Заметим, что mode не присваивает автоматически восьмиричное значение, вам необходим префикс mode с нулем (0):

chmod( "/somedir/somefile", 755 );   // десятичный; возможно неправильныйt
chmod( "/somedir/somefile", 0755 );  // восьмиричный; корректное значение режима

Возвращает true при успешном завершении; в противном случае - false.

смотри также chown() и chgrp().


chown chown -- изменяет владельца файла
Описание
int chown(string filename, mixed user);

Пытается изменить владельца файла filename на пользователя user. Только суперюзер может изменять владельца файла.

Возвращает true при успешном завершении; в противном случае - false.

Note: В Window ничего не выполняется и возвращается true.

Смотри также chown() и chmod().


clearstatcache clearstatcache -- очистить кеш статистики файла
Описание
void clearstatcache(void);

Вызовы системных функций stat() или lstat() в большинстве систем достаточно "дорогостоящие". Поэтому, результаты последнего вызова любой из статусных функций (см. ниже) сохраняются для последующего использования при вызове этой же функции для этого же файла. Если вы желаете инициировать новый кеш, например, в случае, когда к файлу было много обращений по проверке статуса, или файл был изменен, используйте эту функцию для очистки памяти результатов вызовов.

Affected functions include stat(), lstat(), file_exists(), is_writeable(), is_readable(), is_executable(), is_file(), is_dir(), is_link(), filectime(), fileatime(), filemtime(), fileinode(), filegroup(), fileowner(), filesize(), filetype(), и fileperms().


copy copy -- скопировать файл
Описание
int copy(string source, string dest);

Создает копию файла. Возвращает true при успешном завершении; в противном случае - false.

Пример 1. copy()

if (!copy($file, $file.'.bak')) {
    print("failed to copy $file...<br>\n");
}

смотри также: rename()


dirname dirname -- путь к файлу
Описание
string dirname(string path);

Получив строку, содержащую путь у файлу, данная функция возвратит директорию, содержащую файла.

В Windows оба слеша - передний (/) и обратный (\) - используются как разделители при задании пути. В других окружениях это только передний слеш (/).

Пример 1. dirname()

$path = "/etc/passwd";
$file = dirname($path); // $file is set to "/etc"

смотри также: basename()


fclose fclose -- close an open file pointer
Описание
int fclose(int fp);

Указатель на файл fp закрывается.

Возвращает true при удачной операции и false при ошибке.


Указатель должен быть действующим и указывать на файл, успешно открытый fopen() или fsockopen().


feof feof -- проверка на достижение указателем конца файла
Описание
int feof(int fp);

Возвращает true если указатель файла равен EOF или в случае ошибки; в противном случае возвращается false.

Указатель должен быть действующим и указывать на файл, успешно открытый fopen(), popen(), или fsockopen().


fgetc fgetc -- получить символ из файла
Описание

string fgetc(int fp);

Возвращает строку, содержащую один символ, прочитанный по файловому указателю fp. При EOF возвращается false (as does feof()).

Указатель должен быть действующим и указывать на файл, успешно открытый fopen(), popen(), или fsockopen().

Смотри также fopen(), popen(), fsockopen(), и fgets().


fgets fgets -- получить строку по указателю на файл
Описание
string fgets(int fp, int length);

Возвращает строку до length - читается по одному байту из файла, указанного в fp. Чтение заканчивается, если прочитано length символов - 1 байт прочитается в любом случае, или до символов перевода строки и возврата караетки, или до EOF.

При ошибке возвращается false.

Указатель должен быть действующим и указывать на файл, успешно открытый fopen(), popen(), или fsockopen().

Смотри также fopen(), popen(), fgetc(), и fsockopen().


fgetss fgetss -- получить строку по указателю файла и вырезать HTML тэги
Описание
string fgetss(int fp, int length);

Идентично fgets(), отличают fgetss попытки удалить HTML и PHP тэги из прочитанного текста.

Смотри также fgets(), fopen(), fsockopen(), и popen().


file file -- прочитать файл в массив
Описание
array file(string filename);

Идентична readfile(), но file() выдает файл в массив. Каждый элемент массива соответствует строке файла (вместе с символом возврата строки).

Смотри также readfile(), fopen(), и popen().


file_exists file_exists -- проверяет существование искомого файла.
Описание
int file_exists(string filename);

Возвращает true, если файл, определенный в filename, существует; иначе - false.

Смотри также clearstatcache().


fileatime fileatime -- время поледнего обращения к файлу
Описание
int fileatime(string filename);

Возврвщет время последнего усешного обращения к файлу, или false в случае ошибки.


filectime filectime -- время последнего изменения файла
Описание
int filectime(string filename);

Возвращается время последего изменения файла, или false в случае ошибки.


filegroup filegroup -- группа файла
Описание
int filegroup(string filename);

Возврашает ID группы владельца файла, или false в случае ошибки.


fileinode fileinode -- inode файла
Описание
int fileinode(string filename);

Возвращает номер inode файла, или false в случае ошибки.


filemtime filemtime -- время модификации файла
Описание
int filemtime(string filename);

Возвращается время последего изменения файла, или false в случае ошибки.


fileowner fileowner -- владелец файла
Описание
int fileowner(string filename);

Возвращает ID пользователя, владельца файла, или false в случае ошибки.


fileperms fileperms -- разрешения для файла
Описание
int fileperms(string filename);

Возвращает разрешения, установленные для файла, или false в случае ошибки.

.
filesize filesize -- размер файла
Описание
int filesize(string filename);

Возвращает размер файла, или false в случае ошибки.


filetype filetype -- тип файла
Описание string filetype(string filename);


Возвращает тип файла. Возможные значения:

    fifo, char, dir,
    block, link, file, и
    unknown.

В случае ошибки возвращется false


fopen fopen -- открыть файл или URL
Описание
int fopen(string filename, string mode);

Если filename начинается с "http://" (без учета регистра), открывается соединение HTTP 1.0 с указанным сервером и возвращается указатель файла, нга начало текста ответа.

Поскольку редиректы HTTP не обрабатываются, вы должны включать в указание директории завершающие слеши.

Если filename начинается с "ftp://" (без учета регистра), открывается ftp соединение с указанным сервером и возвращается указатель на искомый файл. Если сервер не поддерживает режим пассивного ftp, данная операция завершится ошибкой. Вы можете открывать файлы как для чтения, так и для записи через ftp (но не обе операции одновременно).

Если filename начинается как-нибудь иначе, откравается файл вашей файловой системы, и возвращается указатель на открытый файл.

Если при открвтии файла происходит ошибка, функция возвращает false.

mode выбирается из следующего списка:

  • 'r' - Открыть только для чтения, помещает указатель на начало файла.

  • 'r+' - Открыть для чтения и для записи, помещает указатель на начало файла.

  • 'w' - Открыть только для записи, помещает указатель на начало файла и очищает все содержимое файла. Если файл не сществует, создается новый файл

  • 'w+' - Открыть для чтения и для записи, помещает указатель на начало файла и очищает все содержимое файла. Если файл не сществует, создается новый файл.

  • 'a' - Открыть только для записи, помещает указатель на конец файла. Если файл не сществует, создается новый файл.

  • 'a+' - Открыть для чтения и для записи, помещает указатель на конец файла. Если файл не сществует, создается новый файл.

mode также может содержать символ 'b'. Используется в системах, различающих бинарные и текстовые файлы (не используется в Unix). Если данное значение не имеет смысла, оно игногрируется.

Пример 1. fopen()

$fp = fopen("/home/rasmus/file.txt", "r");
$fp = fopen("http://www.php.net/", "r");
$fp = fopen("ftp://user:password@example.com/", "w");

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

На платформе Windows будьте осторожны, избегая обратных слешей в путях или используйте передние слеши.

$fp = fopen("c:\\data\\info.txt", "r");

Смотри также fclose() , fsockopen(), и popen().


fpassthru fpassthru -- вывод всех данных из указателя файла
Описание
int fpassthru(int fp);

Читает до EOF по полученному указателю файла и записывает результат на стандартное устройство вывода.

При возникновении ошибки fpassthru() возвращает false.

Файловый указатель должен быть действующим и указывать на файл, успешно открытый fopen() popen(), or fsockopen(). Файл, закрытый fpassthru(), не читается, оставляя fp неиспользованным.

Если вы хотиде стедать дамп файла на stdout, вы можете использовать readfile(), которая сэкономит вам один вызов fopen().

Смотри также readfile(), fopen(), popen(), и fsockopen()


fputs fputs -- запись в файл
Описание
int fputs(int fp, string str, int [length]);

fputs() - это псевдоним fwrite(), и обе функции полностью идентичны. Заметим, что параметр length опционален и при его отсутствии записывается вся строка str.


fread fread -- бинарное чтение файла
Описание
string fread(int fp, int length);

fread() читает байты из файла, на который ссылается fp до length. Чтение заканчивается, когда прочитано length байт или достигнут EOF.

// получить содержимое файла в строку
$filename = "/usr/local/something.txt";
$fd = fopen( $filename, "r" );
$contents = fread( $fd, filesize( $filename ) );
fclose( $fd );

Смотри также fwrite(), fopen(), fsockopen(), popen(), fgets(), fgetss(), file(), и fpassthru().


fseek fseek -- поиск в файле
Описание
int fseek(int fp, int offset);

Для файла fp устанавливает указатель в потоке файла на смещение в offset байт. Эквивалентно вызову в Си fseek( fp, offset, SEEK_SET ).

При удачном выполнении возвращает 0, в противном слчае возврщается -1. ЗАметим, что поиск после EOF не рассматривается как ошибка.

Не испоьзуется для файловых указателей, возвращенных fopen() при использовании форматов "http://" или "ftp://".

Смотри также ftell() и rewind().


ftell ftell -- текущая позиция указателя в файле
Описание
int ftell(int fp);

Возвращает позицию указателя в файле, на который ссылвется fp, т.е. смещение в потоке файла.

При возникновении ошибки возвращается false.

TФайловый указатель должен быть действующим и указывать на файл, успешно открытый fopen() или popen().

Смотри также fopen(), popen(), fseek() и rewind().


fwrite fwrite -- бинарная запись в файл
Описание
int fwrite(int fp, string string, int [length]);

fwrite() записывает содержимое string в файловый поток, указанный fp. Если аргумент length присутствует, запись останавливается после записи length-го байта, или после записи всей строки string.

Заметим, что если есть аргумент length, то конфигурационные опции magic_quotes_runtime игнорируются и никакие слеши из string не удаляются.

Смотри также fread(), fopen(), fsockopen(), popen(), и fputs().


is_dir is_dir -- filename - директория?
Описание
bool is_dir(string filename);

Возвращает true, если filename существует и это директория.

Смотри также is_file() и is_link().


is_executable is_executable -- фавйл относится к классу исполнимых
Описание
bool is_executable(string filename);

Возвращает true, если filename существует и является исполнимым файлом.

Смотри также is_file() и is_link().


is_file is_file -- файл относится к классу обычных файлов
Описание
bool is_file(string filename);

Возвращает true, если filename существует и является обычным файлом.

Смотри также is_dir() и is_link().


is_link is_link -- файл относится к файлу символических ссылок
Описание
bool is_link(string filename);

Возвращает true, если filename существует и является символической ссылкой.

Смотри также is_dir() и is_file().


is_readable is_readable -- файл относится к классу читаемых
Описание
bool is_readable(string filename);

Возвращает true, если filename существует и является доступным для чтения.

Помните, что PHP может иметь доступ к файлу как поьлзователь, под чьим id запущен веб-сервер (часто 'nobody'). Ограничения безопасного режима не действуют внутри аккаунта.

Смотри также is_writeable().


is_writeable is_writeable -- файл относится к классу записываемых
Описание
bool is_readable(string filename);

Возврвщает true если файл существует и доступен для записи.

Помните, что PHP может иметь доступ к файлу как поьлзователь, под чьим id запущен веб-сервер (часто 'nobody'). Ограничения безопасного режима не действуют внутри аккаунта.

Смотри также is_readable().


link link -- создать жесткую ссылку
Описание
int link(string target, string link);

link() cсоздает жесткую ссылку.

Смотри также symlink() создает символическую ссылку, и readlink() вместе с linkinfo().


linkinfo linkinfo -- информация о ссылке
Описание
int linkinfo(string path);

linkinfo() возвращает поле st_dev из UNIX C структуры stat, возвращенной системным вызовом lstat. Эта функция используется для верификации, если ссылка (указанная в path) реально существует (испотльзует те же методы, что и макрос S_ISLNK, определенный в stat.h). Возвращает 0 или FALSE в случае ошибки.

Смотри также symlink(), link(), и readlink().


mkdir mkdir -- создать директорию
Описание
int mkdir(string pathname, int mode);

Пытается создать директорию, указанную в pathname.

Заметим, что если вы захотите указать mode в восьмеричной системе, то число должно начинаться с 0.

mkdir("/path/to/my/dir", 0700);

Возвращает true при успешном выполнении и false при ошибке.

Смотри также rmdir().


pclose pclose -- закрывает процесс файлового указателя
Описание
int pclose(int fp);

Закрывает файловый указатель к каналу, открытому popen().

Файловый указатель должен быть действующим и возвращен успешным вызовом popen().

Возврващает статус завершения запущенного процесса.

Смотри также popen().


popen popen -- открыть процесс файлофого указателя
Описание
int popen(string command, string mode);

ОТкрывает канал к процессу, исполняемому путем форкинга команды command.

Возвращает файловый указаель, идентичный возвращемому fopen(), но этот указатель мононаправленный (может использоваться только для чтения или только для записи) и должен бытть закрыт pclose(). Этот указатель можно использовать с fgets(), fgetss(), и fputs().

При возникновении ошибки возвращет false.

$fp = popen( "/bin/ls", "r" );

Смотри также pclose().


readfile readfile -- вывод файла
Описание
int readfile(string filename);

Читает файл и записывает его на стандартное устройство вывода.

Возвращает количество прочитанных байтов. В случае возникновения ошибки возвращется false и за исключением функции, вызванной как @readfile, выводится сообщение об ошибке.

Если filename начинается с "http://" (без учета регистра), открывается соединение HTTP 1.0 к указанному серверу и текст ответа выводится на стандартное устротйство вывода.

Поскольку редиректы HTTP не обрабатываются, вы должны включать в указание директории завершающие слеши.

Если filename начинается с "ftp://" (без учета регистра), открывается ftp соединение с указанным сервером и файл ответа выводится на стандартное устройство вывода. Если сервер не поддерживает режим пассивного ftp, этот вызов завершится ошибкой.

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

Смотри также fpassthru(), file(), fopen(), include(), require(), и virtual().


readlink readlink -- цель символической ссылки
Описание
string readlink(string path);

readlink() работает аналогично функции Си readlink и возвращает содержимое символической ссылки path или 0 в случае ошибки.

Смотри также symlink(), readlink() и linkinfo().


rename rename -- переименовать файл
Описание
int rename(string oldname, string newname);

Пытается переименовать oldname в newname.

Возвращает true при успешном выполнениии и false при сбое.


rewind rewind -- rewind the position of a file pointer
Описание
int rewind(int fp);

Позиционирует файловфй указатель для fp на начало потока файла.

При возникновении ошибки возвращается 0.

Файловый указатель должен быть действующим и указавать на файл, успешно открытый fopen().

Смотри также fseek() и ftell().


rmdir rmdir -- удалить директорию
Описание
int rmdir(string dirname);

Пытается удалить директорию, указанную путем. Директория лдолжна быть пустой, и релевантные разрешения должны допустить это.

При возникновении ошибкт возвращается 0.

Смотри также mkdir().


stat stat -- информация о файле
Описание
array stat(string filename);

Собирает статичтику о файле filename.

Возвращает массив статистической информации о файле со следующими элементами:

  1. устройство

  2. inode

  3. номер ссылки

  4. id пользователя или владельца

  5. id группы владельца

  6. device type if inode device *

  7. размер в байтах

  8. время последнего доступа

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

  10. время последнего изменения

  11. размер блока для I/O файловой системы *

  12. количество занатых блоков

* - тоьлко для систем, поддерживающих тип st_blksize -- в других системах (i.e. Windows) возвращается -1


lstat lstat -- информация о файле или символической ссылке
Описание
array lstat(string filename);

Собирает информацию и файле иил символической ссылке filename. Эта функция идентична stat(), но если filename - это символическая ссылка, то возвращается статус символической ссылки, а не статус файла, на который указывает данная ссылка.

Возвращает массив статистической информации со следующими элементами:

  1. устройство

  2. inode

  3. число ссылок

  4. id пользователя или владельца

  5. id группы владельца

  6. тип устройства, если inode - устройство *

  7. размер в байтах

  8. время последнего доступа

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

  10. время последнего изменения

  11. размер болка для I/O файловой системы *

  12. количество занатых блоков

* - тоьлко для систем, поддерживающих тип st_blksize -- в других системах (i.e. Windows) возвращается -1


symlink symlink -- создать символическую ссылку
Описание
int symlink(string target, string link);

symlink() создает символическую ссылку с существующей целью target с указанным именем link.

Смотри также link() создает жесткую ссылку, и readlink() вместе с linkinfo().


tempnam tempnam -- создать уникальное имя файла
Описание
string tempnam(string dir, string prefix);

Создает никальное имя файла в указанной директории. Если директория не существует, tempnam() может сгененрировать имя файла во временной директории системы.

Возвращает новое временное имя файла, или нулевую строку при ошибке.

Пример 1. tempnam()

$tmpfname = tempnam( "/tmp", "FOO" );


touch touch -- установить время модификации файла
Описание
int touch(string filename, int time);

Пытается установить время модификации файла filename в значение time. Если опция time отсутствует, испотьлзуется текущее время.

Если файл не существует, то он создается.

Возвращает true при успешном выполнении и false в обратном случае.


umask umask -- изменить текущую umask
Описание
int umask(int mask);

umask() устанавливает текущую umask PHP в mask & 0777 и возвращает старую umask. Когда PHP используется ска серверный модуль, umask сохраняется при завершении каждого запроса.

umask() без аргументов возвращает текущую маску.


unlink unlink -- удалить файл
Описание
int unlink(string filename);

Удаляет filename. Аналогично функции Unix C unlink().

Возвращает 0 или FALSE при ошибке.

Смотри также rmdir() для удаления директорий.



Содержание