/** * Get hierarchy product data * * @param ProductData $productData Product data * * @return array */ protected function _getHierarchyProductData(ProductData $productData) { $levels = str_split($productData->getLevel(), 2); $hierarchy = [end($levels) => ['value' => $productData->getValue()]]; array_pop($levels); array_walk(array_reverse($levels), function ($index) use(&$hierarchy) { $hierarchy = [$index => $hierarchy]; }); return $hierarchy; }
/** * Get hierarchy product data * * @param ProductData $productData Product data * * @return integer */ protected function _getProductLevel(ProductData $productData) { return strlen($productData->getLevel()) / ProductData::LEVEL_LENGTH; }