Файлы (file.class)

Класс работы с файлами и изображениями.

Вызов

SYS()->library("file");

Обращение

SFile(); // Или SYS()->file

Методы

write

public function write(string $path, string $data, string $mode = 'a+')
return boolean

Метод записи данных в файл.

$path - путь к файлу
$data - строка для записи в файл
$mode - модификатор для файла (подробнее в инструкции про fopen)

get_content

public function get_content(string $path)
return string

Метод загрузки содержимого файла. 

$path - путь к файлу

get_info

public function get_info(string $path, mixed $info = array('name', 'size', 'date'))
return array

Метод получения информации о файле.
$path - путь к файлу
$info - массив или строка, разделённая ',' со списком получаемых данных
Возможные варианты:
     'name' - имя файла
     'size' - размер файла
     'date' - время последнего изменения файла
     'readable' - доступен ли файл для чтения
     'writable' - доступен ли файл для записи
     'fileperms' - права на файл

Возвращает массив параметров.

normalizeFiles

public function normalizeFiles(array $files)
return array

Нормализует массив типа Files для передачи в функции.

$files - массив вида $_FILES

loadFiles

public function loadFiles(array $files, string $dir="", array $ext=array(), string $filename = false)
return array

Метод загрузки файлов на сервер. Передаёт параметры в нужные функции: либо в loadFile, либо в loadFileUrl.

$files - массив параметров для загрузки на сервер
$dir - директория, в которую загружать файл
$ext - массив разрешённых расширений
$filename - имя файла для сохранения (будет добавляться порядковый номер, если файл с таким именем существует)

Возвращает массив с именами файлов.

loadFile

public function loadFile(array $file, string $dir="", array $ext=array(), string $filename = false, integer $num = 0)
return string

Метод загрузки файла на сервер.

$file - массив параметров для загрузки на сервер
$dir - директория, в которую загружать файл
$ext - массив разрешённых расширений
$filename - имя файла для сохранения
$num - счётчик для уникального названия (ставится автоматически)

Возвращает имя файла.

loadFileUrl

public function loadFileUrl(string $url, string $dir="", array $ext=array(), string $filename = false, integer $num = 0)
return string

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

$url - ссылка на файл
$dir - директория, в которую загружать файл
$ext - массив разрешённых расширений
$filename - имя файла для сохранения
$num - счётчик для уникального названия (ставится автоматически)

Возвращает имя файла.

img_resize

public function img_resize(string $input, string $output, integer $width = 0, integer $height = 0,boolean $ration = false, boolean $percent = false)
return boolean

Метод пропорционального изменения размера изображения.

$input - путь к исходному файлу
$output - путь для сохранения сжатого файла
$width - ширина сжатого изображения
$height - высота сжатого изображения
$ration - включает равномерное уменьшение
$precent - использовать ширину и высоту сжатия как проценты или как пиксели    

img_crop

public function img_crop(string $input, string $output, boolean $crop = true, boolean $percent = false)
return boolean

Метод обрезки изображения.

$input - путь к исходному файлу
$output - путь для сохранения сжатого файла
$crop - если true, то обрезает до ровного квадрата, если массив - обрезает на количество указанных единиц
$precent - использовать ширину и высоту сжатия как проценты или как пиксели

setWatermark

public function setWatermark(string $input, string $output, string $mark, integer $precent = 30, array $position = array('bottom' => 10, 'right' => 10))
return boolean

Метод добавления водяного знака к изображению.

$input - путь к исходному файлу
$output - путь до сохранения сжатого файла
$mark - путь до изображения водяного знака
$precent - процент, сколько будет занимать водяной знак от изображения
$position - позиция водяного знака

imgsize

public function imgsize(string $input, integer $width = 0, integer $height = 0, boolean $crop = false)
return string

Метод создания миниатюр для изображений.

$input - путь к исходному изображению
$width - максимальная ширина
$height - максимальная высота
$crop - обрезать ли изображение

Возвращает путь к миниатюре.

Политика конфиденциальности