Я попытался найти это самостоятельно, прежде чем просить, но не могу понять это.Двумерный массив
Что у меня есть цикл, это на самом деле цикл, который считывает данные XML с simplexml_load_file
Теперь этот XML файл содержит данные, которые я хочу прочитать и поместить в массив .. двумерный массив на самом деле ..
Таким образом, файл XML имеет дочерний элемент с именем Tag и имеет дочерний элемент «Сумма». Сумма всегда отличается, но тег обычно один и тот же, но иногда может меняться.
То, что я пытаюсь сделать сейчас:
Пример:
Это пример XML:
<?xml version="1.0"?>
<Data>
<Items>
<Item Amount="9,21" Tag="tag1"/>
<Item Amount="4,21" Tag="tag1"/>
<Item Amount="6,21" Tag="tag2"/>
<Item Amount="1,21" Tag="tag1"/>
<Item Amount="6,21" Tag="tag2"/>
</Data>
</Items>
Теперь у меня есть цикл, который читает это, видит, что помечать это и суммирует суммы. Он работает с 2 циклами и двумя разными массивами, и я хотел бы иметь все это в одном массиве в одном цикле.
Я пытался что-то вроде этого:
$tags = array();
for($k = 0; $k < sizeof($tags); $k++)
{
if (strcmp($tags[$k], $child['Tag']) == 0)
{
$foundTAG = true;
break;
}
else
$foundTAG = false;
}
if (!$foundTAG)
{
$tags[] = $child['Tag'];
}
, а затем где-то в коде я пробовал различные варианты добавления в массив ($ прилавка, что считается суммам вместе):
$tags[$child['Tag']][$k] = $counter;
$tags[$child['Tag']][] = $counter;
$tags[][] = $counter;
Я попробовал несколько других комбинаций, которые я уже удалил, так как он не работал.
Хорошо, это может быть действительно вопрос о нобе, но я начал с PHP вчера и не знаю как многомерные массивы работают :)
Спасибо
Итак, конечным результатом должен быть массив с тегами и их общая сумма? –
$ tags = array(); for ($ k = 0; $ k
Svetoslav
Ваш XML некорректен, «элементы» должны быть закрыты перед «данными» –