В вашем случае может быть несколько валют, у которых в наборе присутствует одинаковое значение.
Чтобы найти все варианты, можете воспользоваться такой функцией:
function findCurrenciesByValue(array $data, $value) {
$currencies = [];
foreach ($data as $currency=>$currencyValues) {
if (in_array($value, $currencyValues)) {
$currencies[] = $currency;
}
}
return $currencies;
}
Если же вариативностью можно пренебречь и подойдет первая найденная валюта по значению, то ее можно найти с помощью этой функции:
function findFirstCurrencyByValue(array $data, $value) {
$currencies = findCurrenciesByValue($data, $value);
if (empty($currencies)) {
return null;
} else {
return $currencies[0];
}
}
... или так (без использования функции для нахождения всех валют):
function findFirstCurrencyByValue(array $data, $value) {
$firstCurrency = null;
foreach ($data as $currency=>$currencyValues) {
if (in_array($value, $currencyValues)) {
$firstCurrency = $currency;
break;
}
}
return $firstCurrency;
}