Здравствуйте! В php я новичек, необходимо реализовать выгрузку в формате xml из mysql.
Нашел в сети скрипт и доработал под себя, как он работает меня устраивает, но никак не могу разобраться с циклами.
$date = date('c') ;
$xml = '<LISTINGS>
<LISTING GED_VERSION="2" DT_FILE="'.$date.'" ADVFILENAME="file.xml"/>
<ADS>' ;
$ads = '</ADS>
</LISTINGS>' ;
//подключение к базе
$q = mysql_query("SELECT bla,
......ЗАПРОС РАБОТАЕТ КОРРЕКТНО, ВЫДАЕТ ТО, ЧТО НУЖНО..............
FROM bla
WHERE bla=bla") ;
$begdate = date('Y-m-d H') ;
$enddate = date('Y-m-d H', strtotime ('+30 days'));
while ($row = mysql_fetch_array($q)) {
$element = $row['id'] ;
$images = $row['images'];
$images = json_decode($images, true);
foreach ($images as $k => $image) { //ВОТ ЭТОТ ЦИКЛ НУЖНО ПРИМЕНИТЬ
$imagepath = "<FILE FILEPATH=\"http://blabla.ru/$element/"$image['name']"\" />" ;
}
$xml .= '
<OBJECT>
<AD ADVNUM="'.$row['id'].'" LOTNUM="A'.$row['id'].'"/>
<DT BEGIN="'.$begdate.'" END="'.$enddate.'"/>
<ADRINF>
<COUNTRY>Россия</COUNTRY>
<FILES>
'.$imagepath.' //Проблема здесь! Выдает лишь одно название из массива //json, дублирует одно название на несколько строк, в случае, когда в массиве json //несколько значений для $image['name']
</FILES>
</OBJECT> ' ; }
$f = fopen('file.xml', 'w');
fwrite($f, $xml.$ads);
fclose($f);
Нужно, чтобы пробегая по каждой строке массива из mysql, декодировалось json полe images, чтобы из этого массива было вытащено name="имя файла", при этом имен может быть несколько, и далее, между тегами FILES проставлялись теги ,соответственно если имен несколько
и т.д.
Помогите, пожалуйста, разобраться.