Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
<?php
set_time_limit(0); //Включаю ошибки и убираю лимит по времени
error_reporting(E_ALL);
ini_set('php_flag display_errors','on');
ini_set('php_value error_reporting', E_ALL);
ini_set('display_errors','on');
ini_set('error_reporting', E_ALL);
$handles_out = fopen('assets/xml/comand.sh', 'a+');
$import_type = "assets/xml/Parametrs.xml";
fwrite($handles_out, "#!/bin/bash \r\n");
$handles = fopen('assets/xml/comand0.sh', 'a+');
$xmlObject = new XMLReader(); //Создаю объект для чтения файла
$xmlObject->open('assets/xml/FullPack.xml');
while($xmlObject->read()){
if($xmlObject->name == 'Товар'){ //Нахожу то что относиться к товарам
$xmlstr = $xmlObject->readOuterXML (); //Читаю абсолютно всё, что касается товара
$tovar = (array)simplexml_load_string($xmlstr); //Объект загоняю в массив, т.к. мне проще обрабатывать объект
unset($tovar_s);
foreach ($tovar as $key=>$value)//Разбиваю на Ключ=>Значение
{
if(is_numeric($value))//Проверяю если объект числовой, то тогда загоняю значение в float, для того чтобы потом загонять именно числа.
{
$value = (float)$value;
}
$tovar_s[$key] = $value;
}
if($tovar_s['ИД'] !=false)//Иногда проскакивают пустые ID, по этой причине откидываю лишнее.
{
$n++;
$json = json_encode($tovar_s, JSON_UNESCAPED_UNICODE);
$json = str_replace("'","'\''",$json);
$send_string = "curl -XPOST localhost:9200/modx_shop/towar_base/".$tovar_s['ИД']." -d '".$json."'";
fwrite($handles, $send_string."\r\n");
}
unset($tovar);
unset($key);
unset($value);
}
}
fclose($handles);
echo $n;//На всякий случай просто подсчёт количества товаров.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.