У меня есть этот массив, который я пытаюсь обработать, используя цикл foreach
. И мне нужно вызвать функцию, когда достигнут конец массива. Однако у меня есть проблема, когда я достиг конца массива.Определить конец несегментарного многомерного массива
Примечание: Из-за специфики того, над чем я работаю, использование цикла for
, while
или do ... while
не входит в уравнение. Я застрял в использовании цикла foreach
.
Кроме того, если вы предлагаете использовать встроенную функцию PHP end()
, как это сделать? Когда функция возвращает значение в конце массива. В моем случае, однако, значение в конце моего массива является массивом, а не скалярным значением/переменной.
Ниже мой код и попытки определить конец массива.
$arr = array
(
0 => array
(
'departures' => array('date'=>'23 Feb', 'location'=>'Lagos'),
'returns' => array('date'=>'24 Feb', 'location'=>'Abuja')
),
1 => array
(
'departures' => array('date'=>'25 May', 'location'=>'Dubai'),
'returns' => array('date'=>'1 June', 'location'=>'New York')
),
3 => array
(
'departures' => array('date'=>'2 Apr', 'location'=>'Tokyo'),
'returns' => array('date'=>'6 Apr', 'location'=>'Seoul')
),
5 => array
(
'departures' => array('date'=>'2 Apr', 'location'=>''),
'returns' => array('date'=>'6 Apr', 'location'=>'')
),
2 => array
(
'departures' => array('date'=>'2 Apr', 'location'=>'LA'),
'returns' => array('date'=>'6 Apr', 'location'=>'California')
),
4 => array
(
'departures' => array('date'=>'2 Apr', 'location'=>''),
'returns' => array('date'=>'6 Apr', 'location'=>'Hong Kong')
),
);
$counter = 0;
$arr_size = count($arr);
foreach ($arr AS $curr_array)
{
$departures = $curr_array['departures'];
if(empty($departures['location']))
{
continue;
}
if($counter == ($arr_size - 1))
{
//reached end of array, execute function
}
//process array
$counter++;
}
Любая помощь будет принята с благодарностью.
В чем проблема/вопрос? Какова ваша цель? – Rizier123
@ Rizier123, я пытаюсь определить, когда я дойду до конца массива. Использование переменной счетчика не работает. – NaijaProgrammer
Вы имеете в виду, когда находитесь на последней итерации? – Rizier123