Как получить следующее значение из значения совпадения в цикле foreach

Как получить следующее значение из значения соответствия в цикле. Нужен ключ ‘1010-1040’ в массиве.

<?php

$arr = Array
(
'0900-0930' => 0,
'0935-1005' => 0,
'1010-1040' => 0,
'1045-1115' => 0
);


$matchVal = '0935-1005';

foreach ($arr as $key => $value) {

if($matchVal == $key){
echo $key.'<br />';
}
echo next($arr);
}
?>

Заранее спасибо.

0

Решение

Попробуй это

$arr = Array
(
'0900-0930' => 0,
'0935-1005' => 0,
'1010-1040' => 0,
'1045-1115' => 0
);


$matchVal = '0935-1005';

$keys = array_keys($arr);
print $keys[array_search($matchVal,$keys)+1];

Выход

1010-1040
1

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

      <?php
$arr = Array
(
'0900-0930' => 0,
'0935-1005' => 0,
'1010-1040' => 0,
'1045-1115' => 0
);
$keys = array_keys($arr);
$matchVal = '0935-1005';
$matched = array_search($matchVal, $keys); // $key = 1;
$nextindex = $matched + 1;
$nextValue = $arr[$nextindex];
?>
1

Пожалуйста, попробуйте это.

<?php

$arr = Array
(
'0900-0930' => 0,
'0935-1005' => 0,
'1010-1040' => 0,
'1045-1115' => 0
);


$matchVal = '0935-1005';

foreach ($arr as $key => $value) {

if($matchVal == $key){
echo $key.'<br />';
}
next($arr);
echo key($arr)."<br/>;
}
?>
1
По вопросам рекламы ammmcru@yandex.ru
Adblock
detector