Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Вывод многоуровневого массива

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

Schupp1967

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Есть массив. Некоторые элементы этого массива - тоже массивы.  
 
Array ( [0] => Array ( [PartyId] => 5c8568b7-69c3-4161-a338-08d41a02a3fb [PartyName] => first one [Price] => 0 [PartyDate] => 2016-12-15T18:00:00.001 [MusicGenre] => 2 [PartyType] => 1 [Description] => Juhu [Location] => Array ( [CountryName] => Deutschland [CityName] => Horb [StreetName] => NeckarstraЯe [HouseNumber] => 40 [Zipcode] => 72160 [Latitude] => 48.4442435 [Longitude] => 8.690306 ) [Host] => Array ( [HostId] => 28972a2d-73f1-4549-0106-08d419fdb203 [UserName] => flo ) [HostedByUser] => [GeneralUpVoting] => 0 [GeneralDownVoting] => 0 [PriceUpVotring] => 0 [PriceDownVoting] => 0 [LocationUpVoting] => 0 [LocationDownVoting] => 0 [MoodUpVoting] => 0 [MoodDownVoting] => 0 [CommittedUser] => Array ( ) [UserCommitmentState] => 2 )  
 
Это одна строка. Таких строк соответственно много. Надо бы вывести это все в одну строку таблицы, где каждый элемент - ячейка. Элементы, которые являются массивами, наверно надо преобразовать в текстовую строку, просто по порядку собрать элементы массива.
 
Реально запутался. Очень прошу помочь. Вывести просто массив не проблема. А вот как это все многомерное и неравномерное в кучу собрать - не соображаю.  Заранее очень благодарен за помощь.
 
PS. Если невнятно объяснил - отвечу на любые вопросы. Сразу и не выделываясь

Всего записей: 3 | Зарегистр. 18-02-2014 | Отправлено: 21:38 07-12-2016
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Schupp1967

Цитата:
Надо бы вывести это все в одну строку таблицы, где каждый элемент - ячейка.

а если ключи будут разные, то для каждого лепить новый столбец? чего вы хотите добиться - просто хранить или выборку делать? mysql теперь поддерживает и json данные в ячейке

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 22:30 07-12-2016
Schupp1967

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Набор ключей стандартный, ничего меняться не будет. Именно тот набор, что в дампе выше, в первом моем посту.
 
Добиться хочу вывода содержимого на экран. В таблице. Где содержимое выше приведенного будет в одной строке в таблице. Один элемент - одна ячейка. Для стандартных элементов, так сказать. А те элементы, что являются массивами, преобразовать ДО вывода в стринг (по порядку, как идут элементы "подмассива", если можно так назвать) и поместить в одну ячейку. Т.е. имитировать обычный массив, не многомерный.
 
Такое возможно?

Всего записей: 3 | Зарегистр. 18-02-2014 | Отправлено: 23:00 07-12-2016
Mavrikii

Platinum Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Schupp1967

Цитата:
Такое возможно?

так вы храните в базе или только выводите инфу откуда то?  
берете первый элемент, получаете ключи через array_keys, это если вам нужно в выводимую html таблицу названия столбцов.
далее просто построчно выводите таблицу.
ок, простейший пример

Код:
<?php
$data = array(
    array('column1' => 'data1_0', 'column2' => 'data2_0', 'column3' => 'data3_0'),
    array('column1' => 'data1_1', 'column2' => 'data2_1', 'column3' => 'data3_1'),
    array('column1' => 'data1_2', 'column2' => 'data2_2', 'column3' => 'data3_2'),
);    
 
$keys = array_keys($data[0]);
echo '<table style="border: 1px solid black"><tr>';
foreach($keys as $k)
    echo '<th>' . $k . '</th>';
echo '</tr>';
foreach($data as $row)
{
    echo '<tr>';
    foreach($keys as $k)
        echo '<td>' . (isset($row[$k]) ? $row[$k] : '') . '</td>';
    echo '</tr>';
}
echo '</table>';

Всего записей: 15118 | Зарегистр. 20-09-2014 | Отправлено: 23:54 07-12-2016
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » Вывод многоуровневого массива


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru