失礼いたしました。dd() は laravel フレームワークの function でした
7/2 以降の値が取得出来ない原因は下記コードですね
$work = $work[date('Y-m-d', strtotime($yyyymm.'-'.$i))];
$i = 1 の時、$work 配列には 7/1 ~ 7/31 までの情報が格納されていますが、上記コードによって $work 配列の値が 7/1 の値で上書きされてしまい、7/2 以降の値が消失しています。
下記コードで正常に動作すると思います
if (isset($work[date('Y-m-d', strtotime($yyyymm.'-'.$i))])) {
// 修正。$work ではなく $day に格納
// $work = $work[date('Y-m-d', strtotime($yyyymm.'-'.$i))];
$day = $work[date('Y-m-d', strtotime($yyyymm.'-'.$i))];
if ($day['start_time']) {
$start_time = date('H:i', strtotime($day['start_time']));
}
if ($day['finish_time']) {
$finish_time = date('H:i', strtotime($day['finish_time']));
}
if ($day['rest_time']) {
$rest_time = date('H:i', strtotime($day['rest_time']));
}
if ($day['comment']) {
$comment = mb_strimwidth($day['comment'], 0, 40, '...');
}
}