MySqlからデータを取得してExcelでレポートを作成しようとしています。私はデータベースから件名を取得して、列としてExcelシートに出力する必要があります。たとえば、D5、E5、F5 ... M5など。既存の各配列要素間に配列要素を追加する
これまでのところ、
D5:数学、E5:英語、F5:物理学など
| A | B | C | D | E | F | G | H |
--------------------------------------------------------------
1 | | | | | | | | |
...
5 | | | | Mathematics | English | Physics | ... | ... |
結構です細胞は見出しにのようなものを保持しています。課題は、私は、Subject
秒との間で見出しGRADE
を挿入するには、このような何か必要がある:今ここに
| A | B | C | D | E | F | G | H | I | J | K |
--------------------------------------------------------------------------------------
1 | | | | | | | | | | | |
...
5 | | | | Mathematics | GRADE | English | GRADE | Physics | GRADE | ... | ... |
を私がこれまで持っているものです。
$stringindex = "DEFGHIJKLMNOPQRSTUVWXYZ"; // For the excel column cells
$arr_index = str_split($stringindex); // create array elements
$arr_val2 = array(); // create array
$subject = array();
$subname2 = array();
while($sub_row = mysqli_fetch_array($resub, MYSQLI_ASSOC)) {
$subject[] = $sub_row['name']; // Get the subjects from the database and put them in an array
}
foreach($subject as $sub => $subname) {
$subkey[] = $sub; // array of subject keys e.g 0|1|2|3
$subname2[] = $subname; // array of subjects
}
foreach($arr_index as $arr => $arr_val) {
$arr_val2[] = $arr_val; // array of letters e.g D|E|F|G
}
$acount = count($subname2);
$bcount = count($arr_val2);
$size = ($acount > $bcount) ? $bcount : $acount;
$a = array_slice($subname2, 0, $size);
$b = array_slice($arr_val2, 0, $size);
$combine = array_combine($a, $b);
$sheet = $objPHPExcel->setActiveSheetIndex(0); // PHPExcel functions
foreach($combine as $key => $val) { // GET SUBJECTS
$objPHPExcel->getActiveSheet()->getColumnDimension($val)->setAutoSize(true); // Sets Column Width
$sheet
->setCellValue($val.'5', $key); // Lists Subjects as columns
} // END of FOREACH LOOP
上記のコードはあります
質問: 各件名の後にGRADE列を追加するコードを追加するにはどうすればよいですか?
私は正しい方向に私を指してくれることを願っていますcoz '私は今固執しています。
ありがとうございます。
1人の学生が1つの行を持つと仮定した場合、成績ではない場合、それぞれの「課題」の欄には何を入れますか? – Squig
@Squig、はい、それは学生1行で、各科目の下にパーセンテージマーク(例:95)を表示し、次に学年では – Brian
と表示します。おそらく、それらを別々の列に保存したいと思います。 A) ')を使用してパーセンテージ(高、低、平均、中央値など)の計算を実行しますか? – Squig