Открытие и закрытие файла

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

int fopen(string filename, string mode)

Функция возвращает дескриптор файла filename. Файловый дескриптор определяется как целое число – указатель на область памяти, в которой хранятся различные параметры, связанные с файлом.

Если filename начинается не с nttp:, ftp:, PHP:, то открывается файл в файловой системе локального компьютера.

Параметр mode задает режим открытия файла и тип файла.

Режим открытия файла может принимать следующие значения:

· r – открыть только на чтение и установить указатель в начало файла;

· r+ – открыть на чтение и запись и установить указатель в начало файла;

· w – открыть только на запись и установить указатель в начало файла (ес­ли файл не существует – создать его, иначе устано­вить размер файла в ноль);

· w+ – открыть на чтение и запись и установить указатель в начало файла (ес­ли файл не существует – создать его, иначе устано­вить размер файла в ноль);

· a – открыть только на запись и установить указатель в конец файла (если файл не существует – создать его);

· a+ – открыть на чтение и запись и установить указатель в конец файла (если файл не существует – создать его).

После режима открытия файла можно задать тип файла, который имеет либо значение t – текстовый файл (это значение по умолчанию), либо значение b – двоичный файл.

https:// сервер [: порт ] / файл,

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

Если имя файла имеет вид

ftp:// [ пользователь: пароль @] сервер / файл,

то открывается FTP-соединение к указанному серверу и программа получает дос­туп к данному файлу. При доступе к анонимному серверу поле пользова­тель: пароль можно опустить. В режиме FTP можно открыть файл как на чтение, так и на запись (но не одновременно).

Для доступа к файлам стандартного входа (stdin), выхода (stdout) и файла ошибок (stderr) можно обращаться к этим файлам по именам: php://stdin, php://stdout, php://stderr.

При открытии файла можно использовать конструкцию

or die([string status])

например,

$f=fopen("/home/user/file.txt", "r")) or die("Error!");

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

Функция

int set_file_buffer(int fp, int buffer)

устанавливает размер буфера для открытого файла. Если значение buffer равно нулю, буферизация отключается. Если операция выполнена удачно, функция возвращает значение 0, иначе – ненулевое значение.

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

bool fclose(int fp)

Параметр fp является файловым дескриптором открытого ранее с помощью функции fopen()файла. При успешном закрытии возвращается значение true, в противном случае возвращает false. Функции fclose() автоматически вызываются для всех открытых файлов при завершении выполнения всех фрагментов программ в странице PHP.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: