Я начал работать с Magento, и я пытаюсь получить все настраиваемые параметры, связанные с данным продуктом. Я нашел решение для этого, однако, я столкнулся с проблемами.Многомерный массив - дубликат значений через итерации
Мой PHP-код:
foreach ($_product->getOptions() as $optionInfo) :
$values = $optionInfo->getValues();
foreach ($values as $values) :
$valuesArray[$values['option_type_id']] = array("option_type_id" => $values['option_type_id'], "option_id" => $values['option_id'], "title" => $values['title']);
endforeach;
$option = array("id" => $optionInfo->getId(), "type" => $optionInfo->getType(), "title" => $optionInfo->getTitle(), "values" => $valuesArray);
$options[$optionInfo->getId()]= $option;
endforeach;
Он уверен, действительно вернуть правильную информацию. По крайней мере в первой итерации:
[2] => Array
(
[id] => 2
[type] => drop_down
[title] => Custom option 1
[values] => Array
(
[4] => Array
(
[option_type_id] => 4
[option_id] => 2
[title] => Flaphack 1
)
[5] => Array
(
[option_type_id] => 5
[option_id] => 2
[title] => Flaphack 2
)
[6] => Array
(
[option_type_id] => 6
[option_id] => 2
[title] => Flaphack 3
)
)
)
Тем не менее, во второй итерации (и, возможно, даже третий и четвертый, и так далее), у меня дубликаты значений. Во второй итерации я получаю то же значение, что я получил в первой итерации PLUS правильных значения для второй итерации:
[1] => Array
(
[id] => 1
[type] => drop_down
[title] => Custom option 2
[values] => Array
(
[4] => Array
(
[option_type_id] => 4
[option_id] => 2
[title] => Flaphack 1
)
[5] => Array
(
[option_type_id] => 5
[option_id] => 2
[title] => Flaphack 2
)
[6] => Array
(
[option_type_id] => 6
[option_id] => 2
[title] => Flaphack 3
)
[1] => Array
(
[option_type_id] => 1
[option_id] => 1
[title] => Flaphack 1.1
)
[2] => Array
(
[option_type_id] => 2
[option_id] => 1
[title] => Flaphack 1.2
)
[3] => Array
(
[option_type_id] => 3
[option_id] => 1
[title] => Flaphack 1.3
)
)
)
ли вы, ребята, есть какие-либо идеи, что происходит? Было бы очень полезно.
Бест, Nikolaj
Прежде всего, спасибо. Это сработало. Во-вторых: Можете ли вы объяснить мне, почему сложение $ valuesArray, являющееся массивом перед foreach, отсортировало проблему? –
проверить мое редактирование .. upvote, если вам понравилось :) – Deepak
А, я вижу. Cheers bud. К сожалению, я пока не могу этого сделать. Для этого нужна большая репутация. : -/ –