Класс Upload
Методы для закачки файлов.
Upload::format($files)
Преобразование суперглобального массива $_FILES к нормальному виду, когда старшими ключами являются ключи массива name формы, а параметры файла стоят в младших ключах.
- Возвращает нормализованный массив.
- $files — суперглобальный массив $_FILES.
Пример: $normalizedFiles = Upload::format($_FILES);
Upload::uploadFiles($normalizedFiles, $dstDir, $unzip=null)
Универсальный метод для закачки файлов.
Имена файлов преобразуются к безопасному виду (латинская транслитерация и т.п.). Если в папке уже есть такой файл, то приписывается суффикс.
- Возвращает массив закачанных файлов в таком же виде, что и массив name формы. Значениями массива являются окончательные имена файлов.
- $normalizedFiles — массив, полученный с помощью метода Upload::format($_FILES). Размерность массива name формы: 0,1,2.
- $dstDir — путь для закачки файлов.
- $unzip — автоматически разархивировать файлы (в архиве должен находиться только один файл).
Пример:
$uploadedFiles = Upload::uploadFiles(
Upload::format($_FILES),
Blox::info('site','dir').'/temp'
);
Upload::updateFiles($tbl, $normalizedFiles, $wdata, $typesDetails=null)
Обновление штатных данных типа "file"
- Возвращает true|false
- $tbl — имя таблицы штатных данных. Пример: '$shop/catalog/goods/photos'
- $normalizedFiles — массив, полученный с помощью метода Upload::format($_FILES).
- $wdata — ключевые данные таблицы. Пример: ['rec-id'=>180, 'block-id'=>377]
- $typesDetails — массив параметров типов данных, полученный с помощью методов Tdd::getTypesDetailsByColumns() или Tdd::getTypesDetails().