files get content

Файлы для работы с данными

Файлы — манипуляции с курсором

Мы можем перемещать курсор. Для это есть функция fseek. Параметры функции: дескриптор файла, offset, whence (необязательный параметр, константа), offset — количество символов, на которые нужно передвинуться, whence:

  • SEEK_SET — движение начинается с начала файла.
  • SEEK_CUR — движение идет от текущей позиции — значение по умолчанию.
  • SEEK_END — движение идет от конца файла.

Есть еще функция feof, которая говорит, дошли ли мы до конца файла или нет. Вернет true (когда достигли конца файла) или false.

//Установка курсора
fseek(f, offset [, whence])
//Читаем последние 10 знаков
fseek($f, -10, SEEK_END);
$s = fread($f, 10);
//Узнаем текущую позицию
$pos = ftell($f);
rewind($f)//сброс курсора
feof($f) //конец файла

Файлы — прямая работа с данными

Есть удобная функция для зачитывания файла в массив — file. Получим массив, где в каждой ячейке лежит своя строка.

//Получаем содержимое файла в виде массива
 file(filename);
//Еще один вариант прямой работы с данными
//Чтение
file_get_contents(filename);
//Запись
file_put_contents(filename, data[,flag]);// FILE_APPEND константа
//Если записать массив,
$array = array("I", "love", "you");
file_put_contents("test.txt",$array);
//то получим "Iloveyou"

Подобная функция — file_get_contents. Передаем в качестве параметра нужный файл. Зачитывается весь файл в строку, выдается в виде одной большой строки.

Для записи в файл есть функция file_put_contents. Если указать только два обязательных параметра, то весь файл перезапишется, все старое удалится. Если мы хотим добавлять в конец файла — нужен третий параметр — константа FILE_APPEND.

Когда мы работаем с файлом через функцию fopen, если такого файла нет, то php пытается его создать (не факт, что получится создать, если нет прав на создание файла). А функция file_put_contents также, если файла нет, то php его создает. Однако функция file выдаст ошибку, если этого файла не будет (тут лучше перед вызовом этой функции использовать file_exists).

Функции file_put_contents и file_get_contents появились в PHP 5. Эти функции стали настолько популярны, что их портировали в предыдущую версию PHP 4.3.

Файлы — управление

//Копирование файла
copy(source,destination);
//Переименование файла
rename(oldname, newname);
//Удаление файла
unlink(filename);

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

rename ("folder1/example.php", "folder2/exfmple.php");



Добавить комментарий

Ваш e-mail не будет опубликован.