我有一个从查询生成的$ results数组,我想在html中输出一个表。我希望标题为“id”,“length”和“sample_id”。由于标题每次都在变化,所以我用了
$keys = array_keys($results[0]);
我得到“array_keys()期望参数1是数组”错误。如果嵌套部分不是数组,我应该如何获得密钥?
array:59 [▼
0 => {#160 ▼
+"id": 204
+"length": 233
+"sample_id": "ad3"
}
1 => {#161 ▼
+"id": 205
+"length": 733.5
+"sample_id": "bt7r"
}
2 => {#162 ▶}
3 => {#163 ▶}
4 => {#164 ▶}
5 => {#165 ▶}
答案 0 :(得分:1)
这是因为$results
实际上是一个对象数组。
我不知道你是如何获得数组的,但通常可以选择如何返回对象。
如果您使用的是PDO
,则可以使用方法$statement->fetchAll();
。
也可以使用get_object_vars
方法获取所有“密钥”:
$keys = array_keys(get_object_vars($results[0]));