Получите помощь, поддержку и профессиональное общение в Клубе CodeIgniter

# CodeIgniter User Guide Version 2.1.3

Search User Guide

# Помощник File

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

## Загрузка этого помощника

`$this->load->helper('file');`

Доступны следующие функции:

## read_file('path')

Возвращает данные, содержащиеся по указнному пути. Пример:

`$string = read_file('./path/to/file.php');`

Путь может быть абсолютным или относительным. Возвращает FALSE при неудаче.

Примечание: Относительный путь указывается от вашего главного файла index.php

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

## write_file('path', `$data`)

Записывает данные по указанному пути. Если файл не существует, он будет создан. Пример:

`$data = 'Some file data';
if ( ! write_file('./path/to/file.php', $data))
{
echo 'Unable to write the file';
}
else
{
echo 'File written!';
}`

Опционально вы можете установить режим записи через третий параметр:

`write_file('./path/to/file.php', $data, 'r+');`

Режим по умолчанию `wb`. Смотрите руководство по PHP за дополнительной информацией.

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

Примечание: Указывается относительный путь от вашего главного index.php

## delete_files('path')

Удаляет ВСЕ файлы по указанному пути. Пример:

`delete_files('./path/to/directory/');`

Если второй параметр установлен в TRUE, любые директории по указанному пути также будут удалены. Пример:

`delete_files('./path/to/directory/', TRUE);`

Примечание: Файлы должны быть записываемыми или их владельцем должна быть система.

## get_filenames('path/to/directory/')

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

## get_dir_file_info('path/to/directory/', `$top_level_only` = TRUE)

Читает указанный каталог и создает массив, содержащий имена файлов, размер файла, даты и права доступа. Поддиректории, содержащиеся в пути, могут быть считаны, только если указать второй параметр `$top_level_only` в FALSE, так как это может быть ресурсоемкой операцией.

## get_file_info('path/to/file', `$file_information`)

Принимает данный файл и путь, возвращая имя, путь, размер и дату последней модификации. Второй параметр позволяет явно указать, какую информацию вы хотите получить, доступные опции: name, server_path, size, date, readable, writable, executable, fileperms. Возвращает FALSE если файл не найден.

Примечание: "writable" использует функцию PHP is_writable(), которая, как известно, имеет некоторые сложности с вебсервером IIS. Используйте вместо fileperms, которая возвращает информацию функции PHP fileperms().

## get_mime_by_extension('file')

Переводит разрешение файла в MIME-тип, основываясь на списке в config/mimes.php. Возвращает FALSE, если не может определить тип, или открыть конфигурационный файл mimes.php.

`$file = "somefile.png";
echo $file . ' is has a mime type of ' . get_mime_by_extension($file);`

Примечание: Это не корректный путь для определения MIME-типа файлов, и присутствует только для удобства. Это не должно использоваться для решений безопасности.

## symbolic_permissions(`$perms`)

Принимает разрешения числом (в виде, который возвращает `fileperms()`), и возвращает стандартную символьную нотацию прав.

`echo symbolic_permissions(fileperms('./index.php'));
// -rw-r--r--`

## octal_permissions(`$perms`)

Принимает числовые разрешения, и возвращает трехсимвольное восьмеричное представление.

`echo octal_permissions(fileperms('./index.php'));
// 644`

### Поделиться

Переведено в компании Аринт.

# Спасибо!

Вы тоже можете оказать помощь проекту! Как это сделать?

## Помощь и поддержка

Вы можете задать вопросы и получить ответы и советы от гуру CodeIgniter и веб-разработки: вступайте в Клуб CodeIgniter