PHP的二维关联数组的两个不同的关联数组如何每一个只是两个中的一个



出现这种情况是因为我有两个关联数组要传递给视图

然后在视图中,我需要对第一个数组进行foreach并获得一个列表

和next forech,并获取详细信息表

数组以这种方式创建,这与array_merge和其他array_*函数

略有不同我只是在代码中重复了两次赋值,就像这样
$newArray = $ticketResult;
$newArray = $deptResult;

it works and print_r($newArray);显示以下内容(在代码片段之后):

Array
(
[ticketResult] => Array
(
[0] => Array
(
[id] => 3943
[t_name] => customerOne
[date] => 1508236987
[d_name] => In progress
)
[1] => Array
(
[id] => 4139
[t_name] => AnotherName
[date] => 1522134694
[d_name] => In progress
)
[2] => Array
(
[id] => 4367
[t_name] => HisName
[date] => 1535118892
[d_name] => On hold
)
[3] => Array
(
[id] => 4395
[t_name] => Hername
[date] => 1536914668
[d_name] => Shipping
)
)
[deptResult] => Array
(
[0] => Array
(
[id] => 0
[name] => Arrived
)
[1] => Array
(
[id] => 1
[name] => In progress
)
[2] => Array
(
[id] => 2
[name] => On hold
)
[3] => Array
(
[id] => 4
[name] => Closed
)
)
)

正如你所看到的,两个完全不同的关联数组被一个接一个地链接到新的关联数组$newArray中,在下一步中我将其传递给视图(codeigniter)

现在,在视图中,我想在html表中为一个目的查找第一个' tickeresult ',就好像它是一个' ';单个' ';关联数组

然后在视图的另一部分中,我要查找另一个关联数组'ticketDept'并将其放入列表

我想知道应该怎么做我想做的事…

如何使用这种由两个完全不同的关联数组组成的二维关联数组

我也愿意更好的方法来实现我的需要,这最初是传递两个不同的数组到视图,所以如果你认为这个问题可以不同地解决。谢谢你的建议

谢谢你的提示

为了清晰起见,这是控制器

中的调用
return view("Ticketpage/showtickets", ['dataarrays' => $newArray]); 
// Controller
$data = $ticketResult;
$data = $deptResult;
// view use the first array
<?php foreach($ticketResult as $result): ?>

// Your code here
<?php endforeach; ?>


// view use the second array
<?php foreach($deptResult as $result): ?>

// Your code here
<?php endforeach; ?>

然而,我会在控制器中更明确一点,并做一些像:

$data['ticketResult'] = $ticketResult['ticketResult'];
$data['deptResult'] = $deptResult['deptResult'];
// Then load the view
return view('foo/bar', $data);

现在假设您想在无序列表中显示该票证结果的所有名称。在你看来,你应该这样做:

<ul>
<?php foreach($deptResult as $result): ?>
<li><?php echo $result['t_name'] ?></li>
<?php endforeach; ?>
</ul>

在Marco的双重提示下,我终于找到了正确的方法

Controller中,我有两个关联的数组,由两个不同模型的两个方法返回

如问题中所写,两个数组被链接在结果数组$data

public function showTickets($id)
{
$ticketModel = new TicketModel();
$deptModel = new DeptModel();
$ticketRecords = $ticketModel->getTicketsByDept($id);
$deptRecords = $deptModel->getAvailableDepts();
$data['ticketResult'] = $ticketRecords;
$data['deptResult'] = $deptRecords;
return view("Chart/showtickets", $data);
}

和showtickets">视图,这两个数组可以通过这种方式单独访问

<h1>Chart</h1>
<p>
<?php foreach ($deptRecord as $dKey): ?>
<?= $dKey['id'] ?> , <?= $dKey['name'] ?> <br>
<?php endforeach; ?>
</p>

<table style="width:100%">
<tr>
<th>Ticket ID</th>
<th>Cliente</th>
<th>Data Creazione</th>
<th>Dipartimento</th>
</tr>
<?php foreach ($ticketRecords as $tKey): ?>
<tr>
<td><?= $tKey['id'] ?></td>
<td><?= $tKey['t_name'] ?></td>
<td><?= date("d-m-Y", $tKey['date']) ?></td>
<td><?= $tKey['d_name'] ?></td>
</tr>

<?php endforeach; ?>
</table> 

<?= $this->endSection() ?>

最新更新