嗨,我试图计算出哪一年有哪一个十二生肖通过使用余值,但我不明白的方程。在该等式中:($year - 4)% 12,为什么要减去4,然后再除以12得到余数,才能计算出生肖年呢?我明白,如果你做(1996 - 4)% 12 = 166.0,所以余数是0,所以这是一个'老鼠'年。但是这个方程是从哪里来的,它的意义是什么?
$year = 1996;
switch (($year - 4) % 12)
{
case 0: $zodiac = 'Rat'; break;
case 1: $zodiac = 'Ox'; break;
case 2: $zodiac = 'Tiger'; break;
case 3: $zodiac = 'Rabbit'; break;
case 4: $zodiac = 'Dragon'; break;
case 5: $zodiac = 'Snake'; break;
case 6: $zodiac = 'Horse'; break;
case 7: $zodiac = 'Goat'; break;
case 8: $zodiac = 'Monkey'; break;
case 9: $zodiac = 'Rooster'; break;
case 10: $zodiac = 'Dog'; break;
case 11: $zodiac = 'Pig'; break;
}
echo "{$year} is the year of the {$zodiac}.<br />";
2条答案
按热度按时间5vf7fwbs1#
这个周期从几千年前开始计算,所以它只是发现转换到/从共同时代的方式。但别担心,没有跳跃或例外,所以等式总是有效的。有关更多详细信息,请参阅:https://en.wikipedia.org/wiki/Sexagenary_cycle
12年周期和60年周期都是很久以前为了方便统计年份而采用的。
rt4zxlrg2#
如果其他人来这里寻找如何做到这一点,而不是为什么这样做: