Я пытаюсь распечатать таблицу многомерных ассоциативных массивов PHP. Существуют массивы для класса, заданий, учеников, баллы.Как получить доступ к многомерному ассоциативному массиву для печати таблицы?
Я знаком с MySQL-запросами, но я не уверен, как распечатать таблицу из многомерных ассоциативных массивов PHP. Мой мыслительный процесс, чтобы получить доступ к оценке для ученических заданий для класса, похож на MySQL, но я знаю, что здесь не работает. Для одномерного, кажется достаточно простым, но многомерные вложенные ассоциативные массивы. Я не уверен, как подойти к этому?
Заранее благодарен!
<?php
ini_set('display_errors', 'on');
$class=array (
'cat' =>
array (
2 =>
array (
'num' => '3',
'name' => 'Homework',
),
),
'assignments' =>
4 =>
array (
'clid' => '5000001001388',
'assnid' => '1',
'cat' => '3',
'due' => '20100802',
'points' => '5',
'title' => 'American Revolution',
),
),
'students' =>
array (
3 =>
array (
'stuid' => '460798', // stuid is the student's unique alphanumberic ID string
'num' => '4',
'first' => 'Thomas',
'last' => 'Jefferson',
'grade' => 'A', // these are summary statistics for the student for the class
'percent' => '94.7', // these are summary statistics for the student for the class
),
),
'scores' =>
array (
0 =>
array (
'assnid' => '1', // corresponds to assignment's 'assnid'
'stuid' => '460798', // corresponds to student's 'stuid'
'score' => '0', // this is the student's score
),
),
);
// display class properties
print($class["clid"]."<br>");
// display all class properties
foreach ($class["clid"] == $class["assignments"].["clid"] == $class["students"].["assnid"] as $property=>$value) {
print($property . " is " . $value . "<br>");
}
?>
Итак, какую информацию вы хотите вывести? Вы хотите вывести полную информацию о «баллах» (со студентами и данными о назначении)? – Tamara
Да, я хотел вывести студентов, данные о назначении и оценка. Я добавил мой цикл foreach, который работал. Я не знаю, есть ли более элегантный способ прокрутки многомерного массива. – imparante
Сохраняете ли вы данные «оценки», «назначение» и «учащиеся» в отдельных таблицах SQL? Если да, я бы предложил использовать запросы на соединение - вы делаете запрос на таблицу «баллов» и присоединяетесь к таблице «учеников» в поле «stuid» и присоединяете таблицу «присваивания» в поле «assnid». – Tamara