Нерегулярный многоуровневый заголовок PHP - PullRequest
0 голосов
/ 12 ноября 2018

Я новичок в веб-программировании, мне нужна ваша помощь, чтобы решить мою. Я пытался найти все проблемы в Stackoverflow, но я не сталкивался с чем-то похожим на мой случай. Речь идет о создании неправильного заголовка в HTML с PHP.

Я столкнулся с проблемой создания неправильного многоуровневого заголовка с использованием PHP. Я сам попробовал несколько трюков, но они остались нерешенными.

Мой массив PHP:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<?php 
$multi_header = array(
                  array('id'=>0,
						'name'=>'Working',
						'level_1'=>'Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>1,
						'name'=>'Ever Worked',
						'level_1'=>'Unemployment',
						'level_3'=>'Economically Active',
						'group'=>'Employment'
						),
                  array('id'=>2,
						'name'=>'Never Worked',
						'level_1'=>'Unemployment',
						'level_3'=>'Economically Active',
						'group'=>'Employment'
						),
                  array('id'=>3,
						'name'=>'Total',
						'level_1'=>'Unemployment',
						'level_3'=>'Economically Active',
						'group'=>'Employment'
						),
                  array('id'=>4,
						'name'=>'Total of Economically Active',
						'level_1'=>'Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>5,
						'name'=>'Percentage of Working to Economically Active',
						'level_1'=>NULL,
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>6,
						'name'=>'Attending School',
						'level_1'=>'Not Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>7,
						'name'=>'Housekeeping',
						'level_1'=>'Not Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>8,
						'name'=>'Others',
						'level_1'=>'Not Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>9,
						'name'=>'Total of Not Economically Active',
						'level_1'=>'Not Economically Active',
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>10,
						'name'=>'Total',
						'level_1'=>NULL,
						'level_3'=>NULL,
						'group'=>'Employment'
						),
                  array('id'=>11,
						'name'=>'Percentage of Economically Active to Working Age Population',
						'level_1'=>NULL,
						'level_3'=>NULL,
						'group'=>'Employment'
						)
                );

?>

Мне нужно создать заголовок таблицы следующим образом Моя цель

Я хочу, чтобы они выглядели так:

<style>
table {
    font-family: arial, sans-serif;
    border-collapse: collapse;
    width: 100%;
}

td, th {
    border: 1px solid #dddddd;
    text-align: left;
    padding: 8px;
}


</style>
<table>
	<thead>
		<tr>
			<td rowspan='3'>Scope/Coverage</td>
			<td colspan='5'>Economically Active</td>
			<td rowspan='3'>Percentage of Working to Economically Active</td>
			<td colspan='4'>Not Economically Active</td>
			<td rowspan='3'>Total</td>
			<td rowspan='3'>Percentage of Economically Active to Working Age Population</td>
		</tr>
		<tr>
			<td rowspan='2'>Working</td>
			<td colspan='3'>Unemployment</td>
			<td rowspan='2'>Total of Economically Active</td>
			<td rowspan='2'>Attending School</td>
			<td rowspan='2'>Housekeeping</td>
			<td rowspan='2'>Total of Not Economically Active</td>
			
		</tr>
		<tr>
			<td>Ever Worked</td>
			<td>Never Worked</td>
			<td>Total</td>
		</tr>
	</thead>
	
</table>

Что мне делать? Мне нужно выглядеть так. Заранее спасибо

1 Ответ

0 голосов
/ 12 ноября 2018

Добро пожаловать. Таким образом, есть несколько способов, которыми это может быть достигнуто. Во-первых, помните, что, вероятно, лучше выразить то, что вы пытаетесь сделать, только в формате HTML, однако, если вы должны использовать PHP, здесь можно использовать один из возможных способов.

$tableHeader = '[
    {
        "title": "Scope/Coverage",
        "type":  "rowspan",
        "span":  3
    },
    {
        "title": "Economically Active",
        "type":  "colspan",
        "span":  3
    }
]';

foreach (json_decode($tableHeader) as $row) {
  echo "<tr {$row->type}=\"{$row->span}\">{$row->title}</tr>\r\n";
}

Вам, конечно, нужно добавить остальные заголовки таблиц, но вы получите картину. Вы можете хранить JSON для вашей таблицы отдельно в некоторых конфигурациях на случай, если вам потребуется изменить его в будущем.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...