2013-02-09 4 views
0

나는 그들이 수강 한 과목에 대해 학생 성적을 나열 할 배열을 만들었습니다. 그러나 33 번 줄에 PHP 오류 : 정의되지 않은 오프셋이 표시됩니다. 표가 원하는대로 표시되는 것처럼 보입니다. EasyPHP에 업로드 한 후 브라우저에서이 오류가 반복적으로 나타나는 것 같습니다. 나는 무엇을 잘못 했는가?PHP 오류 : 정의되지 않음 오프셋

<?php 
$studentGrades = array(
     array(
      array("<b>Frank Thomas</b>","<b>Courses Taken</b>", "<b>Course Grade</b>"), 
      array("Frank Thomas", "Compilers", "<i>D</i>"), 
      array("Frank Thomas", "Logic and Automated Reasoning", "<i>A</i>"), 
      array("Frank Thomas", "Advanced Robotics", "<i>A</i>")      
     ), 
     array(
      array("<b>Garry Beebs</b>", "Intro to Computer Vision", "<i>B</i>"), 
      array("Garry Beebs", "Machine Learning", "<i>B</i>"), 
      array("Garry Beebs", "Compilers", "<i>A</i>"), 
      array("Garry Beebs", "Interactive Computer Graphics", "<i>A</i>") 
      ), 
     array(
      array("<b>Jesse Kline</b>", "Distributed Systems", "<i>A</i>"), 
      array("Jesse Kline", "Intro to Artificial Intelligence", "<i>C</i>"), 
      array("Jesse Kline", "Advanced Robotics", "<i>B</i>"), 
      array("Jesse Kline", "Natural Language Processing", "<i>B</i>") 
      ) 
     ); 

echo '<table border="2">'; 
for ($arrnum = 0; $arrnum < 3; $arrnum++) 
{ 

for ($row = 0; $row < 4; $row++) 
{ 
echo '<tr>'; 

for ($col = 0; $col < 4; $col++) 
{ 
if ($studentGrades[$arrnum][$row][$col] == '') 
{ 
    echo "<td> </td>"; 
} 
else 
{ 
    if ($row == 0 and $col == 0) 
    { 
    echo "<td>". $studentGrades[$arrnum][$row][$col] . "</td>"; 
    } 
    else if ($row != 0 and $col == 0) 
    { 
     echo "<td> </td>"; 
    } 
    else 
    { 
    echo "<td>". $studentGrades[$arrnum][$row][$col] . "</td>"; 
    }     
} 
} 

} 
echo "</tr>"; 
} 
echo "</table>"; 


?> 

답변

0

4 개의 열을 요구하지만 해당 배열에는 3 개만 표시됩니다.

는 오류 메시지가 당신에게 행과 오류가 발생한 인덱스 말 했어야한다고, 그러나

for ($col = 0; $col < 3; $col++) 

for ($col = 0; $col < 4; $col++) 

를 교체, 그리고 당신을 밀고해야합니다.

관련 문제