Консультация № 44428
27.05.2006, 21:57
0.00 руб.
0 1 1
Здравствуйте, Константин.
Прошу Вас немного поподробнее рассказать о выводе двумерного массива (Вы писали об этом в вопросе №43479). Напомню основную мысль. У меня есть 10 массивов, каждый из которых содержит столбец таблицы (в каждом столбце ок. 600 записей). Я сделал из этих 10-и массивов один двумерный. Теперь мне нужно вывести его содержимое в виде таблицы (т.е. чтобы все было так же, как до экспортирования из excel-a: 10 столбцов, 600 строк). Вы писали, что очень просто сделать. Подскажите, пожайлуста, как. Заранее благодарен

Обсуждение

Неизвестный
28.05.2006, 12:59
общий
это ответ
Здравствуйте, Cool_guy!
Допустим, есть массив $array, в котором первый уровень - это строки, второй - колонки.
Допустим, $array[i] == array(ID, Name, Email), т.е. каждый элемент первого уровня массива содержит в себе массив из ID, Name, Email
Тогда пишем такой код (приложение).
Работает он так. Считаем кол-во строк в массиве. Если строки есть, то считаем кол-во колонок в первой строке (предполагаем, что во всех строках одинаковое кол-во колонок).
Выводим шапку, просто для красоты.
Дальше организовываем цикл по строкам, в каждой интерации цикла по строкам просматриваем каждую колонку и все это выводим.
Выводим конец таблицы. Все.

Рекомендация. Люк Веллинг, Лора Томпсон "Разработка Web-приложений с использованием PHP&MySQL". Поищи в инете, может найдешь. Полезная вещь. Я по ней учился.
И еще sitepoint.com - куча классных статей, только вот на английском :)

Приложение:
<?php$rowsNum = sizeof($array);if (rowsNum == 0) {//показываем какое-то сообщение об ошибкеexit;//или return, если это функция}$colsNum = sizeof($array[0]);echo ‘<table> <tr> <td>ID</td> <td>Name</td> <td>Email</td> </tr>‘;//вывели шапку таблицы, просто для красотыfor ($i = 0; $i < $rowsNum; $i++){ echo ‘<tr>‘; for ($j = 0; $j < $colsNum; $j++) { echo ‘<td>‘.$array[$i][$j].‘</td>‘; } echo ‘</tr>‘;}echo ‘</table>‘;?>
Форма ответа