在循环中创建不带键的数组

2022-08-30 17:49:10

这可能是一个大脑放屁,因为今天很晚了,但我被困在这里。

我需要从选择框中获取 $_POST 值。(它是一个数组),并将其转换为没有任何键的简单数组。

以下是该项目print_r:

Array ( [0] => 19 [1] => 18 [2] => 21 )

问题是,我需要一个看起来像这样的数组:

Array(19,18,21)

每当我试图通过表单字段 foreach() 时,我必须做这样的事情:

$row[] = $val;

但这让我有了一个数字索引。

我错过了什么?

谢谢。


答案 1

你不能有一个没有键的数组。

Array(19,18,21)

此数组具有键 0、1 和 2。


答案 2

数组(在 PHP 中)始终具有(至少)数字索引。但是,您可以通过array_values()提取值。这将仅返回给定数组的值。它当然有索引,但它们是连续的,它们是数字。这是您在PHP中可以拥有的最简单的数组表示形式。

更新,只是为了明确这一点:在PHP中你不能有一个没有索引的数组(据我所知,在任何其他语言中都是完全相同的),因为内部数组总是哈希映射,哈希映射总是需要一个键。“最常见的键”是索引。不能省略“键”。另一方面,我不知道为什么人们应该想要它。如果您不想使用按键,请不要使用按键,仅此而已。PHP在这一点上非常温和。