When writing PHP programs, you often need to use arrays to store and process data. For student performance management systems, we usually need to group scores for better statistics and analysis of data. This article will explain how to use PHP arrays to group grades.
1. Create a student score array
First, we need to create a student score array to store the score information of each student. Suppose the data we want to process is as follows:
$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) );
Name | 中文 | MATHEMATICS | English | |
---|---|---|---|---|
张三 | 85 | 90 | 78 | |
李四 | 90 | 75 | 82 | |
王五 | 78 | 80 | 85 | |
赵六 | 88 | 92 | 94 | |
Qian Qi | 92 | 85 | 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 . '
'; }
$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 . '
'; }
The above is the detailed content of How to group results using php array. For more information, please follow other related articles on the PHP Chinese website!