TL;DR:使用loadAssocList('id', 'name')
loadRowList()从查询返回的表记录中返回一个索引数组的索引数组
因此,我假设$rows 数组看起来像这样:
Array
(
[0] => Array
(
[0] => Joe
)
[1] => Array
(
[0] => Jack
)
[2] => Array
(
[0] => Jerri
)
[3] => Array
(
[0] => Jerry
)
)
您可以使用 PHP 的 array_column() 从每个子数组中获取单个索引值:
$rows = $db->loadRowList();
$output = array_column($rows, 0);
$output 现在应该包含一个如下所示的数组:
Array
(
[0] => Joe
[1] => Jack
[2] => Jerri
[3] => Jerry
)
我们可以在这里做的一个改进是维护一个关联数组,它将数据库的列名映射到它们的值。 loadAssocList() 可以提供帮助。
$rows = $db->loadAssocList();
$output = array_column($rows, 'name');
请注意,我们现在使用 "name" 索引而不是 0。
这可以通过使用loadAssocList()的参数进一步改进:
loadAssocList($key, $column) 返回一个关联数组,以“键”为索引,包含查询返回的名为“列”的列中的值
使用这种方法,我们可以接收ID => Name键值格式的单个数组:
$ouput = $db->loadAssocList('id', 'name');