我在数据库中有一个如下表
id | touserid | data
1 2 a:1:{i:0;s:10:"INV-000001";}
2 2 a:1:{i:0;s:10:"INV-000003";}
3 2 a:1:{i:0;s:15:"The Mej Hotel";}
4 1 a:5:{i:0;s:28:"Total Goalsi:1;s:7:"6250000";}
5 1 a:1:{i:0;s:10:"INV-000007";}
我想像下面那样将数据插入html表中
id | touserid | data
1 2 INV-000001
2 2 INV-000003
3 2 The Mej Hotel
4 1 Total Goals : 6250000
5 1 INV-000007
但是当我尝试使用unsenrialize时,它只是显示如下数组值
Array
如何将数据显示到html表中?
这是我的模型代码
public function getAllNotifications()
{
return $this->db->get('tblnotifications');
}
这是我的控制器代码
$data['notifications'] = $this->Sales_model->getAllNotifications()->result();
$this->load->view('admin/sales/sales', $data);
这是我的查看代码
<table class="table table-dark">
<tbody>
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">To ID</th>
<th scope="col">Notification</th>
</tr>
</thead>
<tbody>
<?php foreach($notifications as $notif){ ?>
<tr>
<td><?php echo $notif->id ?></td>
<td><?php echo $notif->touserid ?></td>
<td><?php echo unserialize($notif->data) ?></td>
</tr>
<?php } ?>
</tbody>
</table>
答案 0 :(得分:2)
更改unserialize()
<td>
代码,如下所示:
<td>
<?php
$data = unserialize($notif->data)
echo (count($data) > 1) ? implode(' : ', $data) : implode('', $data); ?>
</td>
Rest在您的代码中很不错
答案 1 :(得分:1)
表中的字段 data 是已序列化的数组,因此您必须反序列化并循环遍历 data < / strong>。
一个例子:
<table class="table table-dark">
<tbody>
<thead>
<tr>
<th scope="col">#</th>
<th scope="col">To ID</th>
<th scope="col">Notification</th>
</tr>
</thead>
<tbody>
<?php foreach($notifications as $notif){ ?>
<tr>
<td><?php echo $notif->id ?></td>
<td><?php echo $notif->touserid ?></td>
<td><?php echo implode(',', unserialize($notif->data)) ?></td>
</tr>
<?php } ?>
</tbody>
</table>