Witam, próbuję stworzyć tablicę asocjacyjną na podstawie informacji pobranych z bazy danych. Problem polega na tym, że przy każdej iteracji wartości z poprzedniego zestawu danych przechodzą na kolejną i dodawane są wartości z aktualnego zastawu. Próbowałam dodawać tablice by oddzielić wartości z danego zestawu informacji lecz bez powodzenia. Aktualnie kod wygląda tak:
public function parametersCollectionTagsAllegro()
{
$allCategories = MysqlProducts::getCategoryProduct();
// print_r($allCategories);
$arrayAllCollections = [];
$n = 1;
foreach($allCategories as $tags)
{
$productTags = explode(",", $tags['tags']);
print_r($n . "</br>");
$maxCollectionLength = "";
$colection = "Kolekcja";
foreach($productTags as $productTag)
{
if((strpos($productTag, $colection) !== false) && (strlen($productTag) > $maxCollectionLength))
{
$maxCollectionLength = trim($productTag);
}
elseif((strpos($productTag, $colection) === false))
{
$parameter = trim($productTag);
$arrParameter[] = $parameter;
}
}
$collectionParameters = array('collection'=>$maxCollectionLength,'parameters'=>$arrParameter);
print_r($collectionParameters);
$arrayAllCollectionsParameters = array('collections'=>$collectionParameters);
$n += 1;
}
return $arrayAllCollectionsParameters;
}
Próbka przykładowo wyświetlanych danych:
Array ( [collection] => Kolekcja-Pierwsza [parameters] => Array ( [0] => parametr1 [1] => parametr2 [2] => parametr3 [3] => parametr4 [4] => parametr5 [5] => parametr6 ) )
Array ( [collection] => Kolekcja-Druga [parameters] => Array ( [0] => parametr1(poprzedni-zestaw) [1] => parametr2(poprzedni-zestaw) [2] => parametr3(poprzedni-zestaw) [3] => parametr4(poprzedni-zestaw) [4] => parametr5(poprzedni-zestaw) [5] => parametr6(poprzedni-zestaw) [6] => parametr7(aktualny-zestaw) [7] => parametr8(aktualny-zestaw) [8] => parametr9(aktualny-zestaw) ) )
Dziękuję za wszelką pomoc.