У меня есть ассоциативный массив, $teams_name_points
. Длина массива неизвестна.
Как получить доступ к первому и четвертому значению, не зная ключ этого массива самым простым способом?
Массив заполняется следующим образом:
$name1 = "some_name1";
$name2 = "some_name2";
$teams_name_points[$name1] = 1;
$teams_name_points[$name2] = 2;
и т.п.
Я хочу сделать что-то вроде индексированного массива:
for($x=0; $x<count($teams_name_points); $x++){
echo $teams_name_points[$x];
}
Как мне это сделать?
использовать array_keys?
$keys = array_keys($your_array);
echo $your_array[$keys[0]]; // 1st key
echo $your_array[$keys[3]]; // 4th key
Вы можете использовать array_values
который даст вам числовой индексный массив.
$val = array_values($arr);
$first = $val[0];
$fourth = $val[3]
В дополнение к array_values
, чтобы выполнить цикл, пока вы показываете:
foreach($teams_name_points as $key => $value) {
echo "$key = $value";
}
Вы можете использовать функцию array_keys, такую как
//Get all array keys in array
$keys = array_keys($teams_name_points);
//Now get the value for 4th key
//4 = (4-1) --> 3
$value = $teams_name_points[$keys[3]];
Теперь вы можете получить все значения как существующие
$cnt = count($keys);
if($cnt>0)
{
for($i=0;$i<$cnt;$i++)
{
//Get the value
$value = $team_name_points[$keys[$i]];
}
}