Иногда возникает необходимость создать xml-файл из данных, представленных в формате массива. Данная функция помогает быстро решить данную задачу
function createXmlFile($fileName,$rows){ $resultFile = '/upload/export_xmls/'.$fileName.'.xml'; $file = new IO\File(Application::getDocumentRoot() . $resultFile); $file->putContents(''); $export = new \Bitrix\Main\XmlWriter([ 'file' => $resultFile, // относительный путь к создаваемому файлу, файл отсутствует и установлен параметр 'create_file', то он будет автоматически создан 'create_file' => true, //создавать ли файл, или продолжить запись в уже созданный. В данном случае каждый раз будет создаваться и перезаписываться новый файл 'charset' => 'UTF-8', //кодировка файла 'lowercase' => false //приводить ли все теги к нижнему регистру ]); $export->openFile(); $export->writeBeginTag(ucfirst($fileName)); foreach ($rows as $row){ $export->writeBeginTag('Item'); foreach ($row as $col=>$value){ if(is_array($value)){ $export->writeBeginTag($col); foreach ($value as $v){ if(is_array($v)){ $txt = []; foreach ($v as $k=>$vt){ $txt[] = $k.'='.'"'.$vt.'"'; } $export->writeFullTag('value '.implode(' ',$txt),''); } else { $export->writeFullTag('value v="'.$v.'"',''); } } $export->writeEndTag($col); } else { $export->writeFullTag($col, $value); } } $export->writeEndTag('Item'); } $export->writeEndTag(ucfirst($fileName)); $export->closeFile(); echo $resultFile; }
И небольшой пример передачи нужной информации в такую функцию:
createXmlFile('brands',array_map(function ($item){ return [ 'slug'=>$item['slug'], 'name'=>$item['name'], 'name_en'=>$item['name_en'], 'logo'=>$item['logo'], ]; },$arBrands['ITEMS']));
Разработка сайта
Подайте заявку на разработку сайта на базе готового решения от компании 1С-Битрикс или одного из партнеров компании. Максимально подробно опишите, чему будет посвящен сайт, если это интернет-магазин - что он будет продавать, нужна ли мультиязычность, будут ли разные типы цен (розница, опт, крупный опт), будет ли интеграция с 1С, будет ли выгрузка товаров на различные торговые площадки...
Сопровождение сайта
Вы можете подать заявку на сопровождение вашего сайта на базе 1С-Битрикс. Сопровождение включает в себя: проверка актуальности обновлений сайта, проверка актуальности резервной копии, консультации по сайту. Опишите в заявке, какие еще объемы планируются на сопровождении и на какой срок вы планируете заключить договор на сопровождение - мы подберем подходящий вам бюджет на сопровождение
Работы по сайту
Вы можете подать заявку на выполнение определенного объема работ по сайту. Опишите в заявке объем работ. Это может быть разработка какого-то нового функционала, доработки по имеющемуся функционалу, доработки под требования сео-специалистов. На основании заявки вам будет сформирован бюджет работ, а также названы сроки на выполнение тех или иных работ.