月相计算——php

164 阅读1分钟
 $year = date('Y');
$month = 8;
$day =  24;
if ($month < 4) {$year = $year - 1; $month = $month + 12;}
$days_y = 365.25 * $year;
$days_m = 30.42 * $month;
$julian = $days_y + $days_m + $day-1 - 694039.09;
$julian = $julian / 29.53;
$phase = intval($julian);
$julian = $julian - $phase;
$phase = round($julian * 8 + 0.5);
if ($phase == 8) {$phase = 0;}
$phase_array = array('新月', '娥眉月', '上弦月', '盈凸', '满月', '亏凸', '下弦月', '残月');
$lunar_phase = $phase_array[$phase];
var_dump($lunar_phase);