Упражнения с массивами PHP: Многомерный массив в таблице HTML
Многомерный массив в таблице HTML
Вот содержимое вашего массива: Город, Страна, Континент; Токио, Япония, Азия; Мехико, Мексика, Северная Америка; Нью-Йорк, США, Северная Америка; Мумбаи, Индия, Азия; Сеул, Корея, Азия; Шанхай, Китай, Азия; Лагос, Нигерия, Африка; Буэнос-Айрес, Аргентина, Южная Америка; Каир, Египет, Африка; Лондон, Великобритания, Европа.
Отобразите многомерный массив в таблице HTML. Первая строка должна быть строкой заголовка и содержать записи в первом подмассиве. Вызывайте эти элементы без использования цикла. Для последующих строк используйте цикл for с вложенным внутри циклом foreach, чтобы заполнить таблицу оставшимся содержимым массива. Используйте функцию count(), чтобы цикл for работал правильно, даже если вы увеличиваете или уменьшаете массив.
Добавьте простую таблицу стилей в заголовок вашего HTML. Вы можете решить эту задачу самостоятельно или просто вырезать и вставить следующее между тегами <head> </head>.
<style type="text/css"> td, th {width: 8em; border: 1px solid black; padding-left: 4px;} th {text-align:center;} table {border-collapse: collapse; border: 1px solid black;} </style>
Пример
Попробуй сам »<?php
$multiCity=array(
array('Город', 'Страна', 'Континент'),
array('Tokyo', 'Japan', 'Asia'),
array('Mexico City','Mexico', 'North America'),
array('New York City', 'USA', 'North America'),
array('Mumbai', 'India', 'Asia'),
array('Seoul', 'Korea', 'Asia'),
array('Shanghai', 'China', 'Asia'),
array('Lagos', 'Nigeria', 'Africa'),
array('Buenos Aires', 'Argentina', 'South America'),
array('Cairo', 'Egypt', 'Africa'),
array('London', 'UK','Europe')
);
?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=UTF-8" />
<title>Многомерный массив</title>
<style type="text/css">
td, th {width: 8em; border: 1px solid black; padding-left: 4px;}
th {text-align:center;}
table {border-collapse: collapse; border: 1px solid black;}
</style>
</head>
<body>
<h2>Таблица городов<br /></h2>
<table>
<thead>
<tr>
<th>
<?php
echo $multiCity[0][0] ."</th>\n<th>";
echo $multiCity[0][1] ."</th>\n<th>";
echo $multiCity[0][2] ."</th>\n";
?>
</tr>
</thead>
<?php
// Находим количество строк в массиве. Использование этой переменной в цикле for
// вместо точного числа дает вам возможность добавить в массив
// позже без изменения цикла for.
$num = count($multiCity);
//Циклы For начинаются с "0" для перебора всего массива. В этом случае,
// вам нужно начать со второго элемента в массиве и начать с "1".
for ($row=1; $row<$num; $row++){
echo "<tr>\n";
foreach ($multiCity[$row] as $value){
echo "<td>$value</td>\n";
}
echo "</tr>\n";
}
?>
</table>
</body>
</html>
Комментарии
<code>
, несколько строчек кода — в теги<pre><code>
...ваш код...</code></pre>
.