Я постараюсь объяснить это как можно лучше.
У меня есть массив с именем $linkSets
, и у него есть массивы, которые выглядят так:
<string>,<integer>
<string>,<integer>
<string>,<integer>
У меня также есть список приоритетов, который идет в следующем порядке: 22 -> 18 -> 35 -> 34
. Я хотел бы проверить каждое целое число в массиве $linkSets
и получить лучшее <string>
из той же записи массива на основе <integer>
.
Я написал код, который выглядит следующим образом:
foreach($linkSets as $link)
{
$parts = explode(',', $link);
if($parts[1] == 22) {
$best = $parts[0];
break;
}
if($parts[1] == 18) {
$best = $parts[0];
break;
}
if($parts[1] == 35) {
$best = $parts[0];
break;
}
if($parts[1] == 34) {
$best = $parts[0];
break;
}
}
echo "best: $best";
Но, как вы, вероятно, видите, он не работает, он не подчиняется списку приоритетов.
Я не могу придумать, как это сделать, не перебирая массив $linkSets
несколько раз.