I've the following two arrays:

```
// array1
Array (
 [key1] => value1,
 [key2] => value2,
 [key3] => value3,
 [key4] => value4,
 [key5] => value5
)

// array2
Array (
 [0] => key1,
 [1] => key3,
 [2] => key5
)

```

I would like to build a new array that includes only elements of `array1` which *keys* are present in `array2` as *values*, so to have the following:

```
// new array
Array (
 [key1] => value1,
 [key3] => value3,
 [key5] => value5
)

```

How can I make that (maybe using something like arrays intersection)?