Отформатируйте данные двумерного массива в строку последовательных диапазонов дней, разделенных через дефис, на основе оPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Отформатируйте данные двумерного массива в строку последовательных диапазонов дней, разделенных через дефис, на основе о

Сообщение Anonymous »

Мне предоставляются данные из API в формате, который довольно сложно использовать (в том виде, в котором это необходимо для использования) — у меня нет возможности модифицировать API. Ниже приведен пример предоставленных мне данных:

Код: Выделить всё

$data = array(
array('day' => 'Monday', 'start' => 1100, 'end' => 1300),
array('day' => 'Tuesday', 'start' => 1100, 'end' => 1300),
array('day' => 'Wednesday', 'start' => 1100, 'end' => 1300),
array('day' => 'Thursday', 'start' => 1200, 'end' => 1300),
array('day' => 'Friday', 'start' => 1200, 'end' => 1300),
array('day' => 'Saturday', 'start' => 1200, 'end' => 1300),
array('day' => 'Sunday', 'start' => 1200, 'end' => 1400)
);
Данные могут не включать все семь дней недели, начало и конец варьируются от 0000 до 2400. Я пытаюсь придумать способ форматирования данных со следующим выводом:

Код: Выделить всё

Monday - Wednesday (1100-1300), Thursday - Saturday (1200-1300), Sunday (1200-1400)
По сути, смежные дни (время начала и окончания которых совпадают) разделяются дефисом.
Я пытаюсь избежать огромный блок уродливого кода.

Подробнее здесь: https://stackoverflow.com/questions/779 ... s-based-on
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»