【发布时间】:2017-09-14 01:53:33
【问题描述】:
我是 php 的 postgresql 新手。我使用 pg_fetch_array() 函数得到下面的数组。
Array
(
[0] =>
[name] =>
[1] => 1
[status] => 1
[2] => C2005
[code] => C2005
)
在删除索引1 和键值status 之后,我必须重新索引这个数组,以便预期的输出应该变成这样:
Array
(
[0] =>
[name] =>
[1] => C2005
[code] => C2005
)
我试过了
unset($row[1]);
unset($row['status'];
$foo = array_values($row);
echo "<pre>";
print_r($foo)
echo "</pre>";
得到输出
Array
(
[0] =>
[name] =>
[2] => C2005
[code] => C2005
)
从数组中删除特定键后如何重新索引数字索引?
【问题讨论】:
-
使用
pg_fetch_assoc()而不是pg_fetch_array()那么你不会得到数字索引的列,它只会返回命名的列 -
或者使用
pg_fetch_array($result, NULL, PGSQL_ASSOC);来获取关联数组 -
为什么不只在选择语句中选择
name, code? -
array_values如何返回关联数组?它必须返回数值数组 -
由于这是现有的实时应用程序代码,所以我无法进行任何进一步的更改。由于某种原因,字段状态被注入主查询,但稍后需要从结果中删除。有什么方法可以在删除特定键值后重新索引数组?
标签: php arrays postgresql reindex array-key