Помощник File
Помощник File содержит функции, которые помогают в работе с файлами.
Загрузка этого помощника
$this->load->helper('file');
Доступны следующие функции:
read_file('path')
Возвращает данные, содержащиеся в файле по указанному пути. Пример:
$string = read_file('./path/to/file.php');
Возможно указывать относительный или полный серверный путь. Возвращает FALSE при неудаче.
Примечание: Относительный путь указывается от вашего основного файла index.php, а не от вашего контроллера или отображения.
Примечание переводчика. Помните о замечательных константах, в том числе APPPATH. Работать с ними действительно удобно.Если ваш сервер запущен с ограничением 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 user guide.
Примечание: Для того, чтобы эта функция записывала данные в файл, он должен иметь соответствующие разрешения. Если файл не существует, директория, содержащая его должна быть записываемой.
Примечание: Относительный путь указывается от вашего основного файла 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 (Windows). То же касается файловых разрешений, которые возвращаются функцией PHP fileperms().
get_mime_by_extension('file')
Переводит расширение файла в MIME тип, основываясь на списке в config/mimes.php. Возвращает FALSE, если не может определить тип или открыть конфигурационный файл.
$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)
Принимает числовые разрешения (какие возвращает fileperms()) и возвращает трехсимвольную восьмеричную нотацию.
echo octal_permissions(fileperms('./index.php'));
// 644