Maison  >  Article  >  développement back-end  >  Comment regrouper les résultats à l'aide d'un tableau php

Comment regrouper les résultats à l'aide d'un tableau php

PHPz
PHPzoriginal
2023-04-27 09:05:181014parcourir

Lors de l'écriture de programmes PHP, vous devez souvent utiliser des tableaux pour stocker et traiter des données. Pour les systèmes de gestion des performances des étudiants, nous devons généralement regrouper les scores pour de meilleures statistiques et analyses des données. Cet article explique comment utiliser les tableaux PHP pour regrouper les notes.

1. Créez un tableau de scores d'élève

Tout d'abord, nous devons créer un tableau de scores d'élève pour stocker les informations de score de chaque élève. Supposons que les données que nous souhaitons traiter soient les suivantes : Chinois

MathématiquesAnglais1019078李思907582#🎜 🎜 # 104赵六889294105On peut utiliser un tableau bidimensionnel pour stocker ces données, le code est le suivant :
$score = array(
    array('id' => 101, 'name' => '张三', 'chinese' => 85, 'math' => 90, 'english' => 78),
    array('id' => 102, 'name' => '李四', 'chinese' => 90, 'math' => 75, 'english' => 82),
    array('id' => 103, 'name' => '王五', 'chinese' => 78, 'math' => 80, 'english' => 85),
    array('id' => 104, 'name' => '赵六', 'chinese' => 88, 'math' => 92, 'english' => 94),
    array('id' => 105, 'name' => '钱七', 'chinese' => 92, 'math' => 85, 'english' => 88)
);
$group1 = array(); //80分以下
$group2 = array(); //80-90分
$group3 = array(); //90分以上

foreach ($score as $item) {
    $total = $item['chinese'] + $item['math'] + $item['english']; //计算总分

    if ($total < 80) {
        $group1[] = $item;
    } elseif ($total >= 80 && $total < 90) {
        $group2[] = $item;
    } else {
        $group3[] = $item;
    }
}
Enfin, nous devons afficher les résultats du regroupement pour des statistiques et des analyses plus approfondies. Nous pouvons utiliser une boucle foreach pour parcourir les informations sur les étudiants de chaque groupe et afficher le nom de l'étudiant et son score total sur la page. Le code est le suivant :
echo &#39;<h2>80分以下</h2>';
foreach ($group1 as $item) {
    $total = $item['chinese'] + $item['math'] + $item['english'];
    echo $item['name'] . ':' . $total . '<br>';
}

echo '<h2>80-90分</h2>';
foreach ($group2 as $item) {
    $total = $item['chinese'] + $item['math'] + $item['english'];
    echo $item['name'] . ':' . $total . '<br>';
}

echo '<h2>90分以上</h2>';
foreach ($group3 as $item) {
    $total = $item['chinese'] + $item['math'] + $item['english'];
    echo $item['name'] . ':' . $total . '<br>';
}
# 🎜 🎜 #张三 85
102# 🎜 🎜 #
#🎜 🎜 #103 王五 78 80 85
#🎜 🎜 #
钱七 92 85 88#🎜 🎜 #
De cette façon, on créer un tableau bidimensionnel contenant cinq Un tableau d'éléments, chaque élément représente les informations de note d'un élève. Chaque élément est un tableau associatif qui contient le numéro d'étudiant, le nom et les notes de l'étudiant dans chaque matière. 2. Regrouper en fonction des résultats Ensuite, nous devons regrouper en fonction des résultats. Supposons que nous souhaitions regrouper en fonction du score total et placer les étudiants ayant un score total inférieur à 80 dans un groupe, les étudiants ayant un score compris entre 80 et 90 dans un autre groupe et les étudiants ayant un score supérieur à 90 dans un troisième groupe. Nous pouvons utiliser une boucle pour parcourir le tableau des scores des élèves, calculer tour à tour le score total de chaque élève et les classer dans les groupes correspondants. Le code est le suivant : Ici, nous définissons trois tableaux pour stocker trois groupes d'informations sur les étudiants. Utilisez ensuite une boucle foreach pour parcourir les informations de score de chaque élève, calculer le score total de chaque élève et les classer dans les groupes correspondants. 3. Afficher les résultats du regroupement
Ici, nous affichons d'abord le titre de chaque groupe, puis utilisons une boucle foreach pour parcourir les informations sur l'élève de chaque groupe, calculer le score total de l'élève et afficher le nom de l'élève. et le score total sur la page.

4. Code complet

Ce qui suit est le code PHP complet, y compris le code pour créer le tableau des scores des étudiants, regrouper les scores et afficher les résultats de regroupement.

$score = array(
    array('id' => 101, 'name' => '张三', 'chinese' => 85, 'math' => 90, 'english' => 78),
    array('id' => 102, 'name' => '李四', 'chinese' => 90, 'math' => 75, 'english' => 82),
    array('id' => 103, 'name' => '王五', 'chinese' => 78, 'math' => 80, 'english' => 85),
    array('id' => 104, 'name' => '赵六', 'chinese' => 88, 'math' => 92, 'english' => 94),
    array('id' => 105, 'name' => '钱七', 'chinese' => 92, 'math' => 85, 'english' => 88)
);

$group1 = array(); //80分以下
$group2 = array(); //80-90分
$group3 = array(); //90分以上

foreach ($score as $item) {
    $total = $item['chinese'] + $item['math'] + $item['english']; //计算总分

    if ($total < 80) {
        $group1[] = $item;
    } elseif ($total >= 80 && $total < 90) {
        $group2[] = $item;
    } else {
        $group3[] = $item;
    }
}

echo '

80分以下

'; foreach ($group1 as $item) {     $total = $item['chinese'] + $item['math'] + $item['english'];     echo $item['name'] . ':' . $total . '
'; } echo '

80-90分

'; foreach ($group2 as $item) {     $total = $item['chinese'] + $item['math'] + $item['english'];     echo $item['name'] . ':' . $total . '
'; } echo '

90分以上

'; foreach ($group3 as $item) {     $total = $item['chinese'] + $item['math'] + $item['english'];     echo $item['name'] . ':' . $total . '
'; }
5. Résumé

Grâce au code ci-dessus, nous pouvons regrouper les étudiants en fonction de leurs scores et regrouper les étudiants en fonction de leurs scores totaux pour faciliter de meilleures statistiques et analyses des étudiants. informations sur les performances. Dans le même temps, cet exemple montre également comment utiliser les tableaux PHP pour les opérations de base de stockage et de traitement des données. Différentes méthodes de regroupement et bases de regroupement doivent également être sélectionnées et améliorées en fonction de la situation réelle des applications réelles.

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn