通过PHP封装黄历类实现网页源码黄历宜忌信息在线生成

类似于上图这样的网页宜忌信息是怎么生成的呢?

本文通过PHP封装黄历类给出一个范例,实现后端生成黄历宜忌信息,然后把后端生成的变量映射到前端模板。

代码演示:

https://s20.ryzlk.com/

一:引入类

use com\nlf\calendar\util\HolidayUtil;
use com\nlf\calendar\Lunar;
use com\nlf\calendar\Solar;
use com\nlf\calendar\LunarYear;

二:调用类函数

		$solar = Solar::fromYmd($yy, $nn, $jj);
		$lunar = $solar->getLunar();
		$xz = $solar->getXingZuo().'座';
		$week = '星期'.$lunar->getWeekInChinese();
		$gongli = $yy.'年'.$nn.'月'.$jj.'日';
		$chnianyueri = $lunar->toString();//农历
		$sx = $lunar->getYearShengXiaoByLiChun();//生肖
		$yganzhi = $lunar->getYearInGanZhi();
		$nganzhi = $lunar->getMonthInGanZhi();
		$jganzhi = $lunar->getDayInGanZhi();
		//print_r($chnianyueri);
		$jyi = $lunar->getDayYi();
		$jji = $lunar->getDayJi();
		print_r($yi);
		foreach($jyi as $k=>$v){
			if(M('mod_huangli')->eventtopy($v)){
				$jyihtml .= '<a target="_blank" href="/hdjr/'.M('mod_huangli')->eventtopy($v).'.html">'.$v.'</a>';
			}else{
				$jyihtml .= $v;
			}
	
		}
		foreach($jji as $k=>$v){
			if(M('mod_huangli')->eventtopy($v)){
				$jjihtml .= '<a target="_blank" href="/hdjr/ji-'.M('mod_huangli')->eventtopy($v).'.html">'.$v.'</a>';
			}else{
				$jjihtml .= $v;
			}
	
		}		
		$daysx = $lunar->getDayShengXiao();
		$chong = $lunar->getChongDesc();
		$sha = '煞'.$lunar->getSha();
		$chong = $daysx.'日冲'.$chong.' '.$sha;
		$jishen = $lunar->getDayJiShen();
		$jishenhtml = '';
		foreach($jishen as $v){
			$jishenhtml .= $v.' ';
		}
		$xiongsha = $lunar->getDayXiongSha();
		$xiongshahtml = '';
		foreach($xiongsha as $v){
			$xiongshahtml .= $v.' ';
		}		
		$taishen = $lunar->getDayPositionTai();
		$shenwei = '喜神:'.$lunar->getPositionXiDesc().' 福神:'.$lunar->getPositionFuDesc().' 财神:'.$lunar->getPositionCaiDesc();
		$pengzu = $lunar->getPengZuGan().'  '.$lunar->getPengZuZhi();

三:引入模板

include template('index','index');	

四:前端模板调用变量

		<div class="container">
			<div class="page-left">
				<div class="date-box">
					<div class="date-box-bg">
						<div class="date">
							<div class="l">
								<div class="row">
									<div class="label">公历</div>
									<div class="td">{$gongli}</div>
									<div class="td">{$week}、{$xz}</div>
								</div>
								<div class="row">
									<div class="label">农历</div>
									<div class="td">{$chnianyueri}</div>
									<div class="td">{$yganzhi}年 {$nganzhi}月 {$jganzhi}日</div>
								</div>
							</div>
							<div class="r">
								<img src="/statics/pc/images/sx/{$sx}.png">
								<span>(生肖{$sx})</span>
							</div>
						</div>
						<div class="clear"></div>
						<div class="yiji">
							<div class="yi">
								{$jyihtml}
							</div>
							<div class="ji">
								{$jjihtml}
							</div>
						</div>
						<div class="yiji-other">
							<div class="item">
								<span>冲煞:</span>
								<p>{$chong}</p>
							</div>
							<div class="item">
								<span>吉神宜趋:</span>
								<p>{$jishenhtml}</p>
							</div>
							<div class="item">
								<span>凶煞宜忌:</span>
								<p>{$xiongshahtml}</p>
							</div>
							<div class="item">
								<span>胎神位:</span>
								<p>{$taishen}</p>
							</div>
							<div class="item">
								<span>财神位:</span>
								<p>{$shenwei}</p>
							</div>
							<div class="item">
								<span>彭祖百忌:</span>
								<p>{$pengzu}</p>
							</div>
						</div>

总结

至此,整个页面的主要功能就实现了,调用类函数,实现不同日期的黄历宜忌信息生成,不限制时间,不用调用任何外部接口,本文以及本方法由奥顺互联首发,转载请注明出处!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值