如何优雅地去除 PHP 数组中的键名384


在 PHP 中,数组是一种有序的键值对集合。键通常用于唯一标识数组中的元素,而值则代表实际数据。然而,在某些情况下,您可能需要从数组中删除键名,而只保留值。

array_values() 函数

从数组中删除键名的最简单方法之一是使用内置函数 array_values()。此函数接受一个数组作为参数,并返回一个包含数组值的重新索引数组。键名将从结果数组中排除。```php
$array = ['name' => 'John', 'age' => 30];
$values = array_values($array);
print_r($values); // 输出:[0 => 'John', 1 => 30]
```

array_map() 函数

另一个删除数组键名的方法是使用 array_map() 函数。此函数将回调函数应用于数组中的每个值,并返回一个包含结果的新数组。您可以使用匿名函数作为回调函数,将值本身作为参数返回。```php
$array = ['name' => 'John', 'age' => 30];
$values = array_map(function($value) { return $value; }, $array);
print_r($values); // 输出:[0 => 'John', 1 => 30]
```

foreach() 循环

如果您不希望使用内置函数,还可以使用 foreach() 循环手动删除数组键名。通过迭代数组并使用 array_push() 函数收集值,您可以创建一个新的数组,其中只包含值。```php
$array = ['name' => 'John', 'age' => 30];
$values = [];
foreach ($array as $value) {
array_push($values, $value);
}
print_r($values); // 输出:[0 => 'John', 1 => 30]
```

自定义函数

您还可以创建自己的自定义函数来删除数组键名。这可能在您需要对多个数组执行此操作时非常有用。```php
function removeKeys($array) {
return array_values($array);
}
$array = ['name' => 'John', 'age' => 30];
$values = removeKeys($array);
print_r($values); // 输出:[0 => 'John', 1 => 30]
```

应用场景

删除数组键名在各种情况下都很有用,例如:* 将数据转换为 JSON 或 XML 等格式
* 创建新的数组,其中值顺序很重要
* 比较两个数组的值,而不用考虑它们的键名

在 PHP 中从数组中删除键名是一个简单的过程,可以使用多种方法来完成。通过使用 array_values()、array_map() 或自定义函数,您可以轻松创建新的数组,其中只包含数组值。

2024-11-22


上一篇:在 PHP 中获取 标签的内容

下一篇:数据遍历:PHP 循环与 JavaScript 数据库交互