За последние 24 часа нас посетил 45351 программист и 6131 робот. Сейчас ищут 1409 программистов ...

Построение html таблицы в цикле на php

Тема в разделе "Сделайте за меня", создана пользователем Vladimirovich, 19 авг 2023.

Метки:
  1. Vladimirovich

    Vladimirovich Новичок

    С нами с:
    13 мар 2023
    Сообщения:
    8
    Симпатии:
    0
    Добрый день, помогите пожалуйста с кодом как сделать такую табличку

    [​IMG]

    Имеется массив php:
    PHP:
    1. $arr = array(
    2.     array(
    3.     region  => 'Москва',
    4.     date => '01.02.2023',
    5.     ),
    6.     region  => 'Москва',
    7.     date => '02.02.2023',
    8.     ),
    9.     region  => 'Москва',
    10.     date => '01.02.2023',
    11.     ),
    12.     region  => 'Москва',
    13.     date => '02.02.2023',
    14.     ),
    15.     region  => 'Москва',
    16.     date => '01.02.2023',
    17.     ),
    18.     region  => 'Москва',
    19.     date => '01.02.2023',
    20.     ),
    21.     region  => 'Тула',
    22.     date => '04.02.2023',
    23.     ),
    24.     region  => 'Тула',
    25.     date => '01.02.2023',
    26.     ),
    27.     region  => 'Тула',
    28.     date => '02.02.2023',
    29.     ),
    30.     region  => 'Ставрополь',
    31.     date => '01.02.2023',
    32.     ),
    33.     region  => 'Екатеринбург',
    34.     date => '01.02.2023',
    35.     ),
    36.     region  => 'Екатеринбург',
    37.     date => '01.02.2023',
    38.     ),
    39.     region  => 'Екатеринбург',
    40.     date => '06.02.2023',
    41.     ),
    42.     region  => 'Хабаровск',
    43.     date => '07.02.2023',
    44.     ),
    45.     region  => 'Хабаровск',
    46.     date => '01.02.2023',
    47.     ),
    48.     region  => 'Хабаровск',
    49.     date => '01.02.2023',
    50.     ),
    51.     region  => 'Хабаровск',
    52.     date => '07.02.2023',
    53.     ),
    54.    region  => 'Тула',
    55.     date => '01.02.2023',
    56.     ),
    57.     region  => 'Ставрополь',
    58.     date => '01.02.2023',
    59.     ),
    60.     region  => 'Екатеринбург',
    61.     date => '03.02.2023',
    62.     ),
    63.     region  => 'Екатеринбург',
    64.     date => '05.02.2023',
    65.     ),
    66.     region  => 'Екатеринбург',
    67.     date => '01.02.2023',
    68.     ),
    69.     region  => 'Хабаровск',
    70.     date => '01.02.2023',
    71.     ),
    72.     region  => 'Хабаровск',
    73.     date => '01.02.2023',
    74.     ),
    75.     region  => 'Москва',
    76.     date => '02.02.2023',
    77.     ),
    78.     region  => 'Хабаровск',
    79.     date => '02.02.2023',
    80.     ),
    81.     array(
    82.     region  => 'Москва',
    83.     date => '03.02.2023',
    84.     ),
    85.     region  => 'Москва',
    86.     date => '02.02.2023',
    87.     ),
    88.     region  => 'Москва',
    89.     date => '01.02.2023',
    90.     ),
    91.     region  => 'Москва',
    92.     date => '01.02.2023',
    93.     ),
    94.     region  => 'Москва',
    95.     date => '01.02.2023',
    96.     ),
    97.     region  => 'Москва',
    98.     date => '07.02.2023',
    99.     ),
    100.     region  => 'Тула',
    101.     date => '01.02.2023',
    102.     ),
    103.     region  => 'Тула',
    104.     date => '01.02.2023',
    105.     ),
    106.     region  => 'Тула',
    107.     date => '02.02.2023',
    108.     ),
    109.     region  => 'Ставрополь',
    110.     date => '01.02.2023',
    111.     ),
    112.     region  => 'Екатеринбург',
    113.     date => '06.02.2023',
    114.     ),
    115.     region  => 'Екатеринбург',
    116.     date => '01.02.2023',
    117.     ),
    118.     region  => 'Екатеринбург',
    119.     date => '04.02.2023',
    120.     ),
    121.     region  => 'Хабаровск',
    122.     date => '01.02.2023',
    123.     ),
    124.     region  => 'Хабаровск',
    125.     date => '05.02.2023',
    126.     ),
    127.     region  => 'Хабаровск',
    128.     date => '01.02.2023',
    129.     ),
    130.     region  => 'Хабаровск',
    131.     date => '01.02.2023',
    132.     ),
    133.    region  => 'Тула',
    134.     date => '01.02.2023',
    135.     ),
    136.     region  => 'Ставрополь',
    137.     date => '01.02.2023',
    138.     ),
    139.     region  => 'Екатеринбург',
    140.     date => '01.02.2023',
    141.     ),
    142.     region  => 'Екатеринбург',
    143.     date => '01.02.2023',
    144.     ),
    145.     region  => 'Екатеринбург',
    146.     date => '01.02.2023',
    147.     ),
    148.     region  => 'Хабаровск',
    149.     date => '04.02.2023',
    150.     ),
    151.     region  => 'Хабаровск',
    152.     date => '05.02.2023',
    153.     ),
    154.     region  => 'Москва',
    155.     date => '03.02.2023',
    156.     ),
    157.     region  => 'Хабаровск',
    158.     date => '05.02.2023',
    159.     ),
    160. )
    Этот массив с датами посещения по регионам, нужна таблица которая будет динамически отрисовываться в цикле

    PHP:
    1. $html = '<tr><th></th></tr>;
    2.  
    3. foreach($arr as $key) {
    4.   $html.+
    5. }
    Помогите пожалуйста...
     
  2. don.bidon

    don.bidon Активный пользователь

    С нами с:
    28 мар 2021
    Сообщения:
    947
    Симпатии:
    147
    школьник?
     
    Vladimirovich нравится это.
  3. Drunkenmunky

    Drunkenmunky Старожил

    С нами с:
    12 авг 2020
    Сообщения:
    1.511
    Симпатии:
    284
    PHP:
    1. <?php
    2. //$arr = array(.....................
    3.  
    4. $date_format = 'd.m.Y';
    5. $dates       = array();
    6. $visits      = array();
    7.  
    8. foreach ($arr as $item)
    9. {
    10.     $utime = date_format(date_create_from_format($date_format, $item['date']), 'U');
    11.     @$dates[$utime]++; //++ на случай "итого"
    12.     @$visits[$item['region']][$utime]++; //@ - песочница ругается
    13. }
    14.  
    15. ksort($dates);
    16.  
    17. echo "<table border=1 cellspacing=4 cellpadding=0>\n<tr>\n<th>Регионы\n";
    18. foreach ($dates as $key => $value)
    19. {
    20.   printf("<th>%s\n", date('Y-m-d', $key)); //в дальнейшем по жизни используем правильный формат даты
    21. }
    22.  
    23. foreach ($visits as $region => $row)
    24. {
    25.     printf("<tr>\n<th>%s\n", $region);
    26.  
    27.     foreach ($dates as $key => $value)
    28.     {
    29.         $cell = isset($row[$key]) ? $row[$key]: 0;
    30.  
    31.         printf("<td>%s\n", $cell);
    32.     }
    33. }
    34.  
    35. echo '</table>';
    36. ?>
    https://onlinephp.io/c/5d60e
    --- Добавлено ---
    Вы опять не вникли в ТЗ
     
    Vladimirovich нравится это.
  4. Vladimirovich

    Vladimirovich Новичок

    С нами с:
    13 мар 2023
    Сообщения:
    8
    Симпатии:
    0
    О боги... Искренне и по белому завидую вашим талантам программировать:)