当前位置: 首页 > news >正文

注销备案号 网站网站做的长图能导出吗

注销备案号 网站,网站做的长图能导出吗,网络营销策划方案格式,免费又实用的网站农历(Lunar calendar)和公历(Gregorian calendar)是两种不同的日历系统。公历是基于太阳和地球的运动来计算时间的,而农历是基于月亮的运动来计算时间的。农历中的月份是根据月亮的相对位置来确定的,而公历…

农历(Lunar calendar)和公历(Gregorian calendar)是两种不同的日历系统。公历是基于太阳和地球的运动来计算时间的,而农历是基于月亮的运动来计算时间的。

农历中的月份是根据月亮的相对位置来确定的,而公历中的月份是固定的。因此,农历和公历中的月份长度是不同的。同时,农历中还有闰月的概念,这是公历中没有的。

转换农历日期到公历日期的过程需要计算农历中的每个月的长度,以及闰月的存在情况。这些信息可以通过农历算法来计算得到。反之,转换公历日期到农历日期也是同样的原理。

简单来说,农历公历日期转换原理就是利用农历算法通过计算月亮的相对位置和地球和太阳的运动来确定农历日期和公历日期之间的对应关系。

凡是涉及日历、日程的程序,或多或少会用到这一功能,本文用php实现农历公历日期的相互转换。

首先定义两个函数,分别为solarToLunar和lunarToSolar。

solarToLunar用于将公历转换为农历。

/*** 将公历日期转换为农历日期* @param int $year 公历年份* @param int $month 公历月份* @param int $day 公历日期* @return array*   array[0] : 农历年份*   array[1] : 农历月份*   array[2] : 农历日期*/
function solarToLunar($solarYear, $solarMonth, $solarDay) {$lunar_date = array();$y = $solarYear;$m = $solarMonth;$d = $solarDay;$x = 0;$dx = 0;$l = 0;$dl = 0;$y = ($m == 1 || $m == 2) ? $y - 1 : $y;$x = floor(($y - 1) / 4);$dx = ($y - 1) % 4;$l = floor(($y - 1) / 12);$dl = ($y - 1) % 12;$sum = floor(365.25 * $y) - floor(7 * $x + 2375006.5) + floor(30.6 * ($m + 1)) + $d - 1;$sum -= floor(3 * $l + 1867216.25 / 12) - floor(($dl + 7) / 12) - floor(($dl + 11) * 30.6);$lunar_year = floor(($sum + 7) / 291669 * 12 + 101);$lunar_month = floor($sum / 291669 * 12 + 1) - $lunar_year * 12;$lunar_day = $sum - floor(291669 * ($lunar_month - 1) / 12) + 1;$lunar_date = array("year" => $lunar_year, "month" => $lunar_month, "day" => $lunar_day);return $lunar_date;
}

lunarToSolar用于将农历转换为公历。

/*** 将农历日期转换为公历日期* @param int $year 农历年份* @param int $month 农历月份,闰月为负数* @param int $day 农历日期* @return array*   array[0] : 公历年份*   array[1] : 公历月份*   array[2] : 公历日期*/
function lunarToSolar($year, $month, $day)
{$leap_month = getLeapMonth($year);// 判断是否为闰月if ($month < 0) {$month = abs($month);$is_leap_month = true;} else {$is_leap_month = false;}$lunar_days = getLunarMonthDays($year, $month);// 计算农历距离公历元年的天数$lunar_offset = getLunarYearDays($year) + getLunarMonthDays($year, $month) + $day - 1;// 公历元年为1900年,每年的天数为365天或366天$solar_year = 1900;$solar_days = 365;while ($lunar_offset >= $solar_days) {$solar_year++;$solar_days = isLeapYear($solar_year) ? 366 : 365;$lunar_offset -= $solar_days;}// 根据天数计算公历月份和日期$solar_month = 1;while ($lunar_offset >= getSolarMonthDays($solar_year, $solar_month)) {$lunar_offset -= getSolarMonthDays($solar_year, $solar_month);$solar_month++;}$solar_day = $lunar_offset + 1;return array($solar_year, $solar_month, $solar_day);
}

下面的代码用于辅助实现日期转换。

  1. 定义天干、地支、生肖等数组。

$gan = array("甲", "乙", "丙", "丁", "戊", "己", "庚", "辛", "壬", "癸");
$zhi = array("子", "丑", "寅", "卯", "辰", "巳", "午", "未", "申", "酉", "戌", "亥");
$shengxiao = array("鼠", "牛", "虎", "兔", "龙", "蛇", "马", "羊", "猴", "鸡", "狗", "猪");
  1. 利用公式计算天干地支:

$ganIndex = ($lunar_date["year"] - 3) % 10;
$zhiIndex = ($lunar_date["year"] - 3) % 12;
  1. 计算生肖:

$shengxiaoIndex = ($lunar_date["year"] - 4) % 12;
  1. 将天干、地支、生肖拼接成字符串:

$ganzhi = $gan[$ganIndex] . $zhi[$zhiIndex];
$shengxiao = $shengxiao[$shengxiaoIndex];

以上就是实现天干地支和生肖转换的代码。

http://www.yayakq.cn/news/148126/

相关文章:

  • 如何修改wordpress站网站属性
  • 本地网站建设官网怎样写网站描述
  • 在线玩网页游戏h5网站大全建筑公司网站大全
  • 舟山建站河北省建设工程招标网
  • 东安网站建设顺德网站建设原创
  • 网站建设 三网政务网站集约化建设推进情况
  • 360优化大师安阳网站推广优化
  • 著名网站设计师三站合一的网站怎么做教程
  • 网站建设及优化的策划书查询网站外链
  • 建设一个网站平台的费用网站是别人做的 ftp账号吗
  • 做外汇模拟的网站手机资讯网站源码
  • 专做废旧电子电路板配件回收的网站网站换主推关键词会怎么样
  • 金融网站开发方案手机网站建设怎么样
  • 想建个网站什么代码都是自己写营销型网站和传统网站区别
  • wordpress文本小工具栏企业网站优化哪家好
  • 做推广的网站带宽需要多少合适湖南做电商网站需要什么条件
  • 如何让百度新闻收录网站文章什么是网站的二级目录
  • 中小企业品牌网站建设一份完整的个人简历模板
  • 想要网站导航正式推广洛阳网站建设lyland
  • 百度做的网站后台怎么建设一个网站做十个二级域名
  • 恒通建设集团有限公司网站我国婚纱网站建设的现状
  • 深圳网站建设送域名网站开发公司合作协议书
  • 网站注册系统建设集团网站价格
  • 个人网站建设价格表深圳宝安区医院
  • 网站报价清单济宁住房和城乡建设局网站首页
  • 网站建设属于IT吗网站开发需要学些什么?
  • 网站邮箱验证怎么做遂昌网站建设
  • 做受免费网站大气红色礼品公司网站源码
  • 深圳建设工程交易服务网站wordpress站
  • 厂房建设招标网站国外ps网站