PHP code example of scort / lunar

1. Go to this page and download the library: Download scort/lunar library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

scort / lunar example snippets


// 引入
use Scort\Lunar\Lunar;

// 农历转换类
$lunar = new Lunar();

/**
 * 公历转农历,公历范围(1891-02-09 ~ 2100-12-31)
 */
 
// 指定日期
$date = date("Y-m-d");
$date = explode("-", $date);

// 转换
$todayLunar = $lunar->solarToLunar(...$date);
var_dump($todayLunar);

/**
 * 将农历转换为公历,农历范围(1891-1-1 ~ 2100-12-29)
 *
 * @param $year :农历-年
 * @param $month :农历-月,闰月处理:例如如果当年闰五月,那么第二个五月就传六月,相当于农历有13个月
 * @param $date :农历-日
 */
$lunarYear = 1891;
$lunarMonth = 1;
$lunarDay = 1;
if ($todayLunar['status'] === 200) [$lunarYear, , , , $lunarMonth, $lunarDay] = $todayLunar['data'];
var_dump($lunar->lunarToSolar($todayLunar[0], $todayLunar[4], $todayLunar[5]));

// 获取2024年的闰月
$leapMonth_2024 = $lunar->getLeapMonth(2024);
// 获取2025年的闰月
$leapMonth_2025 = $lunar->getLeapMonth(2025);
var_dump(
    $leapMonth_2024, // int 0
    $leapMonth_2025  // int 6
);

$isLeapYear_2024 = $lunar->isLeapYear(2024);
$isLeapYear_2025 = $lunar->isLeapYear(2025);
var_dump(
    $isLeapYear_2024, // bool true
    $isLeapYear_2025  // bool false
);

$lunarYearZodiacName = $lunar->getLunarYearZodiacName(2024);
var_dump(
    $lunarYearZodiacName // string  "龙"
);

array(2) {
  ["status"]=> int(200)
  ["date"]=> array(3) {
    [0]=> string(4) "2024"
    [1]=> string(2) "07"
    [2]=> string(2) "20"
  }
}

 当status是200时,就有data结果,索引结果解释如下:
 * status: 200
 * data: 
 *  [0] 公历年
 *  [1] 公历月
 *  [2] 公历日
 
 当status非200时,没有data,只有msg来描述错误信息
 * status: 非200
 * msg: 错误原因