相关疑难解决方法(0)

从PHP中的键列表创建新数组

我想要一种快速简单的方法来复制数组,但能够指定我想要复制的数组中的哪些键.

我可以轻松地为此编写一个函数,但我想知道是否有PHP函数已经执行此操作.类似array_from_keys()下面的功能.

$sizes = array('small' => '10px', 'medium' => '12px', 'large' => '13px');

$chosen = array_from_keys($sizes, 'small', 'large');

// $chosen = array('small' => '10px', 'large' => '13px');
Run Code Online (Sandbox Code Playgroud)

php arrays

5
推荐指数
3
解决办法
8468
查看次数

仅返回其键位于另一个数组中的数组值

我有两个数组,看起来像:

$fields = array('id', 'name', 'city', 'birthday', 'money');

$values = array('id' => 10,    
    'name' => 'Jonnas',   
    'anotherField' => 'test',
    'field2' => 'aaa',
    'city' => 'Marau', 
    'field3' => 'bbb',
    'birthday' => '0000-00-00',
    'money' => 10.95
);
Run Code Online (Sandbox Code Playgroud)

是否有PHP内置函数检索仅使用$fields数组上指定的键填充的数组(id, name, city, birthday, money)

我期望的回报是这样的:

$values2 = array(
    'id' => 10,
    'name' => 'Jonnas',
    'city' => 'Marau',
    'birthday' => '0000-00-00',
    'money' => 10.95
);
Run Code Online (Sandbox Code Playgroud)

PS:我正在寻找内置功能.

php arrays

5
推荐指数
1
解决办法
382
查看次数

按键数组过滤数组

可能的重复:
PHP 内置方法获取给定键列表的数组值

PHP 有用于此目的的内置函数吗?

我有两个数组,第一个与一些数据关联。例如:

$data = array(
    'name'      => 'John',
    'last_name' => 'Smith',
    'address'   => 'NY, ...',
    'phone'     => '1234567'
);
Run Code Online (Sandbox Code Playgroud)

另一个带有键的数组:

$keys = array(
    'name', 
    'last_name'
);
Run Code Online (Sandbox Code Playgroud)

应用此函数后,我仅从第一个数组中获取值,其中包含第二个数组中的键。

$result = function($data, $keys);
print_r($result);

// array(
//    'name'      => 'Jonh',
//    'last_name' => 'Smith'
// )
Run Code Online (Sandbox Code Playgroud)

php arrays filtering

-3
推荐指数
1
解决办法
414
查看次数

标签 统计

arrays ×3

php ×3

filtering ×1