Как сопоставить ключи ассоциативного массива со значениями массива без цикла

Вопрос в значительной степени говорит обо всем.

Я пытаюсь сопоставить ключи одного массива со значениями другого в php, без использования цикла. Спасибо 🙂

Я мог бы создать массив, назвав все ключи значением, с которым я хочу сопоставить, и установив значение в null и проверив пересечение ключей, но это просто кажется неэффективным. Там, вероятно, есть более простой способ, если кто-нибудь знает 🙂

Например

$array1 = array('photo' => 'foo.jpeg', 'audio' => 'bar.mp3');
$array2 = array('photo', 'audio', 'video');

Я пытаюсь получить любое значение $ array2 для совпадения с любым из ключей $ array1

-1

Решение

Попробуйте эти методы.

<?php
$a = array_keys( array('photo' => 'foo.jpeg', 'audio' => 'bar.mp3') );
$b = array('photo', 'audio', 'video');

//This will return empty array
print_r(array_values( array_diff($a, $b) ));

//This will return array with "video".
print_r(array_values( array_diff($b, $a) ));

//This will check Double sided array so the response
// will be element missing from both arrays.
print_r(array_values(array_merge(array_diff($b, $a), array_diff($a, $b))));
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]