Php 变量作为键多维数组
我有一个数组$data['lists'] 在某些情况下,数组将被更改,因此我创建了一个函数来获取密钥。我就是这么做的Php 变量作为键多维数组,php,arrays,codeigniter-3,Php,Arrays,Codeigniter 3,我有一个数组$data['lists'] 在某些情况下,数组将被更改,因此我创建了一个函数来获取密钥。我就是这么做的 foreach($data['lists'] as $key => $val) { foreach( $val as $keyItem => $valKey) { $data['column'][] = $keyItem; } } $data['kolom']
foreach($data['lists'] as $key => $val)
{
foreach( $val as $keyItem => $valKey)
{
$data['column'][] = $keyItem;
}
}
$data['kolom'] = array_unique($data['column']);
然后在HTML中我这样做
<?php
$no = 0;
for ($y = 0; $y < count($lists); $y++) {
$no++;
echo "<tr>";
echo "<td>" . $no . "</td>";
for ($x = 0; $x < count($kolom); $x++) {
echo "<td>" . $lists[$x]->$kolom[$x] . "</td>";
}
echo "</tr>";
}
但是当我运行它时,我得到了这个错误消息:数组到字符串的转换。我怎样才能修好它?提前感谢为什么不:
// iterate over `$lists`
foreach ($lists as $val) {
$no++;
echo "<tr>";
echo "<td>" . $no . "</td>";
// output every value from each `$lists` item
foreach ($val as $valKey) {
echo "<td>" . $valKey . "</td>";
}
echo "</tr>";
}
正如错误所说,您正在尝试将数组转换为字符串。您需要找出正在尝试执行此操作的位置,并进行检查,以确保打印输出是字符串而不是数组对象。所有这些的目的是什么?如下图所示$列出[$x]->$kolom[$x];你尝试打印数组,这就是为什么你会想到这个错误。哦,永远不要这样想。我让它变得很难-_-
// iterate over `$lists`
foreach ($lists as $val) {
$no++;
echo "<tr>";
echo "<td>" . $no . "</td>";
// output every value from each `$lists` item
foreach ($val as $valKey) {
echo "<td>" . $valKey . "</td>";
}
echo "</tr>";
}