Ich habe ein Array mit dieser Struktur:Gruppe Arrays basierend auf ähnlichen Werten in PHP
<?php
$grades = array(
'Grade 1' => array(
'title' => 'Grade 1 Class',
'students' => 5,
'teacher' => 'Smith',
),
'Grade 2' => array(
'title' => 'Grade 2 Class',
'students' => 5,
'teacher' => 'Smith',
),
'Grade 3' => array(
'title' =>'Grade 3 Class',
'students' => 5,
'teacher' => 'John',
)
);
wo ich Gruppe sie auf bestimmte Eigenschaften basieren soll. Zum Beispiel zur Gruppe aller Qualitäten, die gleiche Anzahl von Studenten haben wären:
Grade 1 Class - Grade 3 Class 5
ich durch das Array wie folgt bekommen:
foreach ($grades as $key => $value) {
$return[$value['students']][] = $value['title'];
}
foreach ($return as $key => $value) {
echo implode(' - ', $value)."\t\t".$key;
}
// output is
// Grade 1 Class - Grade 2 Class - Grade 3 Class 5
aber der obige Code gibt die Mittelstufe als auch, wie kann Ich gebe nur das erste und das letzte Element aus, um die gewünschte Ausgabe zu erhalten, vorausgesetzt, wir wissen vielleicht nicht, wo ähnliche Werte auftreten.
Zum Beispiel für this array dies ist die gewünschte Ausgabe:
Grade 1 Class - Grade 2 Class 5
Grade 3 Class - Grade 6 Class 8
Grade 7 Class 9
Grade 8 Class - Grade 9 Class 4
Können Sie ein Array erstellen, die Sie auch ausgegeben werden sollen, bitte? – Pachonk
@Pachonk Ich möchte kein anderes Array nach dem ursprünglichen Array erstellen, ich möchte sie nur in Gruppen ausgeben. –
Ahh, okay, ich verstehe es jetzt. – Pachonk