@ShadowTrix

Сравнить значения одного массива с ключами другого?

Массив №1
$array_one = [ 
	'alice' => 'one',
	'bob' => 'two', 
	'craig' => 'three', 
];


Массив №2
$array_two = [ 
     0 => 'alice', 
     1 => 'craig',  
];


Я могу получить значения из массива №2:
'alice', 'craig',

Как мне совместить данные двух массивов, чтобы, зная данные ключей ('alice', 'craig' ), получить их значения из массива №1 ?

Я пробовал
array_keys($array_one);

Получил ключи из массива №1.
Но как теперь взять значения массива №2 и получить ключи массива №1, если совпадают значения одного и ключи второго.

Думаю, что смог объяснить все правильно, если нужно, то дополню\разъясню.

Заранее спасибо всем за помощь!
  • Вопрос задан
  • 309 просмотров
Решения вопроса 2
@tukreb
Можете реализовать это через foreach
foreach ($array as $key => $value){

}

где &key- это ключ массива, а $value разумеется значения массива.
Ответ написан
Комментировать
@ShadowTrix Автор вопроса
Пока остановился на этом решении:
$array_one = array_flip($array_one);

$result = array_intersect($array_one,  $array_two);

$result = array_keys($result);


Если будет вариант проще, то буду признателен
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@russeljo
Так и не понял что надо сравнить или что-то получить.
Поэтому ответ будет соответствующим.
$key = 0;
$result = $array_one[$array_two[$key]];
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы