Нужно выбрать 4 дня недели, включая сегодняшний. Желательно использовать инструменты, входящие в Laravel, так как проект создан с помощью этого PHP фреймворка.
Я сделал по такой схеме:
// Сегодняшний день + еще `n` дней
Carbon::now()->addDay(n)->isoFormat('dddd');
// где n = Arr::random(1,6);
Возможно есть другие решения. Подскажите варианты реализации задуманного.
<?php
use Carbon\Carbon;
use Carbon\CarbonPeriod;
$days = [];
$now = Carbon::now();
// Формируем массив ключей для семи дней недели.
$keys = range(0, 6);
// Удаляем текущий день.
// dayOfWeekIso - возвращает число текущего дня недели
// между 1 (понедельник) и 7 (воскресенье).
unset($keys[$now->dayOfWeekIso - 1]);
// Выбираем случайные три дня.
$rand_keys = array_rand($keys, 3);
// Создаем массив из дат в периоде
// для начала и конца текущей недели.
$period = CarbonPeriod::between(
$now->copy()->startOfWeek(),
$now->copy()->endOfWeek()
);
// Перебираем массив дат, оставляя необходимые.
// `isSameDay` - тот же день того же месяца того же года.
foreach ($period as $key => $date) {
if (in_array($key, $rand_keys) or $date->isSameDay($now))
$days[] = $date->locale('ru')->isoFormat('dddd');
}
dd($days);
На выходе получаем: сегодня вторник + еще 3 случайных:
array:4 [▼
0 => "понедельник"
1 => "вторник"
2 => "четверг"
3 => "суббота"
]
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Вопрос, как в Java(каким классом?) можно производить запись в середину файла(перезаписать блок по смещению)