Рекурсия и return

1482909

Новичок
Что делаю не так?

PHP:
function getFirstElementAndValue($arProductAttributes, $productID, $csvRows = array()) {
    $similar = $arProductAttributes[0]['groupID'];
    $arProductAttributesFirst = array_splice($arProductAttributes, 0, 1);
    $arProductAttributesNext = $arProductAttributes;

    foreach ($arProductAttributes as $id => $item) {
        if ($similar == $item['groupID']) {
            unset($arProductAttributes[$id]);
        }
    }

    $reIndexArProductAttributes = array_values($arProductAttributes);
    $csvRows[] = createCsv($arProductAttributesFirst, $reIndexArProductAttributes, $productID);

    if (count($arProductAttributesNext) != 0) {
        getFirstElementAndValue($arProductAttributesNext, $productID, $csvRows);
    } else {
        return $csvRows; // Когда выполняется эта строка размер $arProductAttributesNext изменяет свое значение с 0 на 1 и так далее на возрастание, зависит от размера $csvRows, в итоге все данные в нем стираются, в место того что бы возвратить их.
    }
}
 
Сверху