PHP 获取数组键值:全面指南342


在 PHP 中,数组是一种有序的键值对集合。我们可以使用以下方法获取数组的键值:

1. 使用 foreach 循环

这是获取数组键值最简单的方法:```php
$array = ['name' => 'John', 'age' => 30];
foreach ($array as $key => $value) {
echo "Key: $key, Value: $value
";
}
```
输出:
```
Key: name, Value: John
Key: age, Value: 30
```

2. 使用 array_keys() 函数

该函数返回一个数组中所有键的数组:```php
$keys = array_keys($array);
foreach ($keys as $key) {
echo "Key: $key
";
}
```
输出:
```
Key: name
Key: age
```

3. 使用 array_values() 函数

该函数返回一个数组中所有值的数组:```php
$values = array_values($array);
foreach ($values as $value) {
echo "Value: $value
";
}
```
输出:
```
Value: John
Value: 30
```

4. 使用 array_map() 函数

该函数将回调函数应用于数组中的每个键值对,并返回一个新数组:```php
$callback = function($key, $value) {
return [$key, $value];
};
$result = array_map($callback, array_keys($array), array_values($array));
foreach ($result as $item) {
echo "Key: {$item[0]}, Value: {$item[1]}
";
}
```
输出:
```
Key: name, Value: John
Key: age, Value: 30
```

5. 使用 array_combine() 函数

该函数将两个数组合并为一个键值对数组, wobei 数组的第一个数组提供键,第二个数组提供值:```php
$keys = ['name', 'age'];
$values = ['John', 30];
$result = array_combine($keys, $values);
foreach ($result as $key => $value) {
echo "Key: $key, Value: $value
";
}
```
输出:
```
Key: name, Value: John
Key: age, Value: 30
```

6. 使用 array_flip() 函数

该函数将数组的键和值互换:```php
$result = array_flip($array);
foreach ($result as $key => $value) {
echo "Key: $key, Value: $value
";
}
```
输出:
```
Key: John, Value: name
Key: 30, Value: age
```

7. 使用 in_array() 函数

检查一个值是否在一个数组中:```php
if (in_array('name', array_keys($array))) {
echo "键 'name' 存在
";
}
```
输出:
```
键 'name' 存在
```

8. 使用 array_search() 函数

查找一个值在数组中的键:```php
$key = array_search('John', array_values($array));
if ($key !== false) {
echo "键 'name' 位于 $key 处
";
}
```
输出:
```
键 'name' 位于 0 处
```

9. 使用 isset() 函数

检查数组中是否存在一个键:```php
if (isset($array['name'])) {
echo "键 'name' 已设置
";
}
```
输出:
```
键 'name' 已设置
```

10. 使用 unset() 函数

从数组中删除一个键:```php
unset($array['name']);
if (!isset($array['name'])) {
echo "键 'name' 已删除
";
}
```
输出:
```
键 'name' 已删除
```

自定义键值对数组

我们可以使用键值对来创建自定义数组:```php
$array = [
'name' => 'John',
'age' => 30,
'city' => 'New York'
];
```

自定义数组支持两种语法:* 短数组语法:省略键值分隔符 (=>)
* 长数组语法:使用键值分隔符 (=>)

本文介绍了在 PHP 中获取数组键值的不同方法。根据您的具体需求,您可以选择最合适的技术。

2024-12-11


上一篇:PHP 打乱数组顺序的全面指南

下一篇:PHP 数组按大小排序:全面指南