Для работы с файлами и изображениями используется класс CFile
Вот пример, кода, как сохранить несколько файлов в свойство нового элемента
$item["image"] — содержит массив изображений
$imgItemList = array();
foreach($item["image"] as $val){ if($val) $imgItemList[] = CFile::MakeFileArray($val); }$PROP['LIST_IMG'] = $imgItemList; //сюда записываем массив избражений LIST_IMG — у вас своё свойство
$arLoadProductArray = Array(
"ACTIVE_FROM" => date('d.m.Y H:i:s'),
"MODIFIED_BY" => 1,
"IBLOCK_ID" => $IBLOCK_ID,
"CONTENT_TYPE" => 'html',
"CODE" => Cutil::translit(strtolower($nameProduct),"ru",$arParamsTranslit),
'DETAIL_TEXT_TYPE' => 'html',
'PREVIEW_TEXT_TYPE' => 'html',
"NAME" => $nameProduct,
"IBLOCK_SECTION" => $thisItemCatGoToAr,
"ACTIVE" => "Y",
"PROPERTY_VALUES"=> $PROP,
"DETAIL_TEXT" => $item["description"],);
Так мы можем сохранять изображение или в файл в свойство. Так же можно записывать изображения в детальную или превью.
$arLoadProductArray["DETAIL_PICTURE"] = CFile::MakeFileArray($item["image"][0]);
$arLoadProductArray["PREVIEW_PICTURE"] = CFile::MakeFileArray($item["image"][0]);
Это то что мне часто требуется в работе с файлами, дополнительные методы, которые я частао использую при работе с файлами.
GetByID — позволяет получить информацию о файле.
GetPath — позволяет получить путь к файлу по его id
Информация с сайта Битрикса
Чтобы сохранить файл нужно воспользоваться методом CFile::SaveFile
Параметры которые принимает метод
CFile::SaveFile( array file, string save_path, bool ForceMD5=false, bool SkipExt=false), $dirAdd='', bool checkDuplicates = true ); Что принимает file "name" => "название файла", "size" => "размер", "tmp_name" => "временный путь на сервере", "type" => "тип загружаемого файла", "old_file" => "ID старого файла", "del" => "флажок - удалить ли существующий файл - любое непустое значение", "MODULE_ID" => "название модуля", "description" => "описание файла", "content" => "содержимое файла. Можно сохранять файл, указывая его содержимое, а не только массив, полученный при
save_path | Путь к папке в которой хранятся файлы (относительно папки /upload). | |
ForceMD5 | Необязательный. По умолчанию false. | 7.0.0 |
SkipExt | Необязательный. По умолчанию false. | 7.0.0 |
dirAdd | 7.0.0 | |
checkDuplicates | Проверка на дубли. Необязательный. По умолчанию true. |
Комментарии (33)