コードに基づいて、2 番目の推測は正しいです。
if((($year % 4==0) && ($year % 100==0)) || ($year % 400==0))
うるう年であるためには、これらのいずれかが真でなければならないことを意味します。
($year%4==0) && ($year%100==0)
$year%400==0
したがって、次の条件の下では、年はうるう年になります。
また
ただし、投稿したコードは、うるう年を正しく定義していないという点で間違っています。
100 で割り切れ、400 で割り切れない場合を除き、4 で割り切れる年は閏年です。if
($year % 100 == 0)
($year % 100 != 0)
したがって、適切なロジックは次のようになります。
if ((($year % 4 == 0) && ($year % 100 != 0)) || ($year % 400 == 0))
$leapYear = true;
について&&
:
&&
は AND を意味し、式A && B
は true または false のいずれかです。
定義により、A && B
と の両方が true の場合にのみtrue にA
なりB
ます。それらのいずれかが false の場合、それA && B
は false です。