Запуск парсинга осуществляется не по cron’у, а демоном.
Может быть вы всё-таки прочтёте вопрос? Тут очень много пользователей, которые пишут свои "ответы" и "комментарии", не читая сам вопрос. Вы даже сейчас не смогли прочесть его. Я не знаю, зачем вы вообще заходите на этот сайт. Я попросила прочесть вопрос уже 3 раза и вы ни разу этого не сделали.
Дайте next после последнего.
if (next($arr) === false) {
	reset($arr);
}
echo current($arr);Как можно достать следующий и предыдущий элемент относительно $array[$i]?
Запрос рассматривался,как вариант,но желательно,без запросов
Мне нужна функция, которая будет возвращать предыдущие или следующие элементы массива относительно заданных.
Мне нужно left и right передавать. Где в вашей функции оно?
внимательно прочтите вопрос, а потом изучите как эти четверо работают
В результате пришли к следующему паттерну. Перед обработкой каждого сообщения из очереди проверяем подключение к БД, если с ним что-то не так - завершаем процесс, сообщение отправляем на повторную обработку, а уже supervisor перезапускает процесс.
function getElementFromArray(int $i, array &$array){
  if ( $i < 0 ) {
    $i = count($array) - 1;
  } else if ( $i >= count($array) ) {
    $i = 0;
  }
  return isset($array[$i]) ? [$i,$array[$i]] : [null,null];
}
[$i,$value] = getElementFromArray(--$i,$arr);
Что такое res? Стандартное поле, функция или чтото еще?