使用数组键创建新数组

Ale*_*x V 4 php arrays

鉴于:

$data = array(
    "some"  => "163",
    "rand"  => "630",
    "om"    => "43",
    "words" => "924",
    "as"    => "4",
    "keys"  => "54"
);
Run Code Online (Sandbox Code Playgroud)

我想要一个只使用与那些特定键匹配的键的新数组:

$keys = array( "some", "thing", "rand", "keys" );
Run Code Online (Sandbox Code Playgroud)

我想返回一个包含这些键的数组,创建:

$arr = array(
     "some"   => "163",
     "rand"   => "630",
     "keys"   => "54"
);
Run Code Online (Sandbox Code Playgroud)

Tim*_*per 7

你可以用array_intersect_key()和array_flip():

$arr = array_intersect_key($data, array_flip($keys));
Run Code Online (Sandbox Code Playgroud)

结果:

Array
(
    [some] => 163
    [rand] => 630
    [keys] => 54
)