「レイヤー」に基づいた週ごとのカレンダーアプリケーションを作成しています。このカレンダーは、$calendar変数で配列として表されるDay-Hourに基づくマトリックスです。
hour |Monday | Tuesday | Wednesday ...
12am
01am
02am
...
カレンダーに休日を適用したい場合は、次のようにします。
$holidays = getHolidays();
for( $day = 0; $i < count($calendar)); $day ++)
{
for( $hour = 0; $i < count($calendar[$day])); $hour ++)
{
if ( exists_in_array( $calendar[$day][$hour] , $holidays ) )
{
$calendar[$day][$hour] = "holiday";
}
}
}
さて、セットスペシャルイベントを適用したい場合は、次のようにします。
$specialDates = getSpecialDates();
for( $day = 0; $i < count($calendar)); $day ++)
{
for( $hour = 0; $i < count($calendar[$day])); $hour ++)
{
if ( exists_in_array( $calendar[$day][$hour] , $specialDates ) )
{
$calendar[$day][$hour] = "special";
}
}
}
現時点では、新しいレイヤーを適用するためにカレンダーを反復処理するループがあると、アプリケーションが遅くなる可能性があるため、非常に心配しています。
それで、(私の場合)カレンダーに別の情報を追加するのは良い習慣ですか?