嗨,我有一个数组,我想在一个表中以行和列的组合显示数据数组,如下面的预期输出表。所有值都将获取未在测试中的空列中的所有值。
输出:
NAME | Test | test2 | test3|
raj | pass | | fail |
user | fail | pass | |
user1| | | pass |
下面是数据数组
array(size = 8)
'firstname' => string 'raj' (length = 20)
'test_title' => string 'tofel' (length = 5)
'submittimestamp' => string 'pass' (length = 19)
9 =>
array(size = 8)
'firstname' => string 'user' (length = 5)
'test_title' => string 'Test 1' (length = 6)
'submittimestamp' => string 'fail' (length = 19)
10 =>
array(size = 8)
'firstname' => string 'user1' (length = 7)
'test_title' => string 'test2' (length = 5)
'submittimestamp' => string 'pass' (length = 19)
查看:
下面的代码是从数组中显示表中的数据
<thead>
<tr>
<th>Employe Name</th>
<?php if(count($recordss))
{
foreach ($recordss as $records)
{
$records = (object)$records;
$title=$records->test_title;
?>
<td>
<?php echo ucfirst($title); ?>
</td>
<?php }}?>
</tr>
</thead>
<tbody>
<?php
if(count($recordss)){
foreach ($recordss as $records) {
$records = (object)$records;
?>
<tr>
<td><a href="<?php echo base_url();?>welcome/employee/<?php echo $records->usr_id;?>"><?php echo ucfirst($records->firstname); ?></td>
<td><?php echo ucfirst($records->submittimestamp); ?></td>
</tr>
<?php } } ?>
</tbody>
</table>
我试过了,结果如下:
NAME | | Test|test2|test3|
raj | pass | | |
user | fail | | |
user1 | fail | | |
raj | fail | | |
user | pass | | |
所有值都在额外的列中,但不在测试中。请帮我解决这个问题谢谢。我需要像上面的输出表那样显示数据。
3条答案
按热度按时间zpjtge221#
添加了提取测试标题的部分。并修复了循环以首先显示包含测试标题的标题行。然后添加后续循环,将结果放置到相应的测试列中。
你可以试试下面的代码。
输出:
b4wnujal2#
为什么您的输出与您希望的不一样,因为您没有检查数据字段,并且您按垂直而不是水平打印数据。请查看下面的代码以了解详细信息。
阵列数据:
筛选名称列的唯一名称,并筛选所有测试名称列的唯一测试名称。
这里是代码视图。
希望这对你有帮助。祝你好运。
lmvvr0a83#
下面的代码首先创建一个二维空网格。这是通过得到一个独特的课程和员工名单,并制定
$grid
为每个员工和每个课程安排一个时间段。然后,它只是一个通过原始数据,并把每个插槽的标记的情况。根据测试数据,输出为。。。
你只需要把它 Package 成你的格式,然后处理每一个
$grid
一次划船。更新:
查看代码。。。