Un utilisateur a rencontré un défi en essayant de transformer un tableau à 2 dimensions ($MainArray) en un tableau à 3 dimensions tableau dimensionnel ($ConvertedArray). L'utilisateur souhaitait regrouper les tâches en fonction de leurs noms de machine et conserver leurs clés d'origine.
La solution à ce défi réside dans l'utilisation d'une fonction PHP appelée array_column. Cette fonction vous permet d'extraire des colonnes spécifiques d'un tableau multidimensionnel. Voici comment l'utiliser dans ce cas :
$machineNames = array_column($MainArray, 'Machine_Name'); $uniqueMachines = array_unique($machineNames); $ConvertedArray = []; foreach ($uniqueMachines as $machineName) { $ConvertedArray[$machineName] = array_filter($MainArray, function ($job) use ($machineName) { return $job['Machine_Name'] === $machineName; }); }
Ce code accomplit la transformation souhaitée en itérant sur les noms de machine uniques et en regroupant les tâches en conséquence dans le $ConvertedArray. Le résultat est un nouveau tableau avec des noms de machines comme clés et des tableaux de tâches associées comme valeurs.
Le code fourni peut être facilement implémenté dans votre script PHP pour obtenir le résultat souhaité. Les tableaux d'origine et convertis peuvent être imprimés pour vérification :
echo '<pre class="brush:php;toolbar:false">'; print_r($MainArray); echo ''; echo '
'; print_r($ConvertedArray); echo '';
Cela affichera à la fois le tableau à 2 dimensions d'origine et le tableau à 3 dimensions nouvellement créé.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!