php 根据一个数组值做键取出另一个数组对应键的值
时间: 2023-10-10 09:13:07 浏览: 87
可以使用`array_combine`函数来实现根据一个数组的值作为键,取出另一个数组对应键的值。示例代码如下:
```php
$keys = array('apple', 'banana', 'orange');
$values = array(5, 8, 3);
$result = array_combine($keys, $values);
print_r($result);
```
输出结果为:
```
Array
(
[apple] => 5
[banana] => 8
[orange] => 3
)
```
在这个例子中,`$keys`数组的值作为键,`$values`数组的值作为值,最终得到一个新的数组`$result`。
相关问题
php怎么从二维数组里取出2个字段以及字段的值出来重新组成一个新数组
假设你有一个二维数组如下:
```
$array = [
['id' => 1, 'name' => 'Tom', 'age' => 20],
['id' => 2, 'name' => 'Jerry', 'age' => 22],
['id' => 3, 'name' => 'Mickey', 'age' => 25],
];
```
你想从每个子数组中取出 `id` 和 `name` 两个字段以及对应的值,可以使用 `array_map` 函数和闭包函数来实现:
```
$newArray = array_map(function($item) {
return [
'id' => $item['id'],
'name' => $item['name']
];
}, $array);
```
这样你就得到了一个新的数组 `$newArray`,其中只包含了 `id` 和 `name` 两个字段:
```
$newArray = [
['id' => 1, 'name' => 'Tom'],
['id' => 2, 'name' => 'Jerry'],
['id' => 3, 'name' => 'Mickey'],
];
```
php 获取数组某一列
在 PHP 中,可以使用 array_column() 函数来获取数组中的某一列数据。这个函数接受三个参数:第一个参数是要处理的数组,第二个参数是要取出的列的键名或者索引值,第三个参数是可选的,表示作为新数组的键的列的键名或者索引值。
例如,假设有一个二维数组 $data,包含了若干个用户的信息,其中每个用户信息包括 id、name 和 email 三个字段,可以使用以下代码来获取所有用户的 email 列:
```
$emails = array_column($data, 'email');
```
这样就会返回一个新的数组 $emails,其中包含了所有用户的 email 值。如果要将 email 值作为新数组的键,可以这样写:
```
$email_map = array_column($data, 'email', 'id');
```
这样就会返回一个新的关联数组 $email_map,其中键是每个用户的 id 值,而值是对应的 email 值。