旧暦、六曜を取得できるAPIを無料で提供しています。
■ 暦APIを使用したサンプルを2例ご紹介いたします。
1: 日めくりのカレンダーにしてみました。



11

16
友引
令和4年
09

12
師走
・ソース koyomiD.php
<?php
date_default_timezone_set('Asia/Tokyo');
$api = 'https://koyomi.zingsystem.com/api/';
 $param = array(
 	 'mode' => "d"
 	,'cnt'  => "1"
 	,'targetyyyy' => date("Y")
 	,'targetmm' => date("m")
 	,'targetdd' => date("d")
);
$ch = curl_init($api);

## パラメータを設定
curl_setopt($ch, CURLOPT_URL, $api);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($param));

## 結果を取得
$result = curl_exec($ch);
## コネクション切断
curl_close($ch);

## 連想配列にデコード
$data = json_decode($result, true);
## データ取得
$date = $data['datelist'][date("Y-m-d")];
## 曜日から文字色決定
if($date['week'] === "日"){
	$color="#FF0000";
}
else if($date['week'] === "土"){
	$color="#0000CC";
}
else if($date['holiday'] !== ""){
	$color="#FF0000";
}
else{
	$color="#000000";
}
?>
<table style="border: 1px #666666 solid; border-collapse:collapse; font-color: #111111;"><tbody>
	<tr><td colspan="3" height="10" style="background-color:#666666"></td></tr>
	<tr><td>
		<table><tbody>
		<tr><td width="15"  style="line-height: 1em; aling:center; font-size: 20px;color: <?php echo($color) ?>;">
			<?php echo("<br>" . $date['week'] ."<br>"."曜") ?>
		</td></tr>
		<tr><td width="15" style="line-height: 1em;aling:center;color: <?php echo($color) ?>; font-size: 10px;">
			<?php echo("旧<br>" .  $date['kyurekim']."<br>月<br>".$date['kyurekid'] . "<br>日") ?>
		</td></tr>
		<tr><td width="15" style="aling:center">
			<table><tbody>
			<tr>
				<td width="5" style="line-height: 1em;color: <?php echo($color) ?>;"><?php echo($date['sekki']) ?></td>
				<td width="5" style="line-height: 1em;color: <?php echo($color) ?>;"><?php echo($date['rokuyou']) ?></td>
				<td width="5" style="line-height: 1em;color: <?php echo($color) ?>;"><?php echo($date['zyusi'] . "<br>" . $date['zyunisi']) ?></td>
			</tr>
			</tbody></table>
		</td></tr>
		</tbody></table>
	</td>
	<td>
		<table><tbody>
		<tr><td style="color: <?php echo($color) ?>;"><?php echo($date['gengo'].$date['wareki'] ."年") ?></td></tr>
		<tr><td style="font-size: 60px;color: <?php echo($color) ?>;"><?php echo(date("d")) ?></td></tr>
		<tr><td style="color: <?php echo($color) ?>;"><?php echo($date['holiday']) ?></td></tr>
		</tbody></table>
	</td>
	<td>
		<table><tbody>
		<tr><td width="15" style="line-height: 1em;color: <?php echo($color) ?>; font-size: 10px;"><?php echo("<br>" .date("m")."<br>月") ?></td></tr>
		<tr><td width="12" style="line-height: 1em;color: <?php echo($color) ?>; font-size: 10px;"><?php echo($date['inreki']) ?></td></tr>
		</tbody></table>
	</td></tr>
</tbody></table>
				
2: 月めくりのカレンダーにしてみました。
12月
01
旧11月8日

赤口
戊子
02
旧11月9日

先勝
己丑
03
旧11月10日

友引
庚寅
04
旧11月11日

先負
辛卯
05
旧11月12日

仏滅
壬辰
06
旧11月13日

大安
癸巳
07
旧11月14日
大雪
赤口
甲午
08
旧11月15日

先勝
乙未
09
旧11月16日

友引
丙申
10
旧11月17日

先負
丁酉
11
旧11月18日

仏滅
戊戌
12
旧11月19日

大安
己亥
13
旧11月20日

赤口
庚子
14
旧11月21日

先勝
辛丑
15
旧11月22日

友引
壬寅
16
旧11月23日

先負
癸卯
17
旧11月24日

仏滅
甲辰
18
旧11月25日

大安
乙巳
19
旧11月26日

赤口
丙午
20
旧11月27日

先勝
丁未
21
旧11月28日

友引
戊申
22
旧11月29日
冬至
先負
己酉
23
旧12月1日

赤口
庚戌
24
旧12月2日

先勝
辛亥
25
旧12月3日

友引
壬子
26
旧12月4日

先負
癸丑
27
旧12月5日

仏滅
甲寅
28
旧12月6日

大安
乙卯
29
旧12月7日

赤口
丙辰
30
旧12月8日

先勝
丁巳
31
旧12月9日

友引
戊午
・ソース koyomiM.php
<?php
date_default_timezone_set('Asia/Tokyo');
$api = 'https://koyomi.zingsystem.com/api/';
 $param = array(
 	 'mode' => "m"
 	,'cnt'  => "1"
 	,'targetyyyy' => date("Y")
 	,'targetmm' => date("m")
 	,'targetdd' => date("d")
);
$ch = curl_init($api);

## パラメータを設定
curl_setopt($ch, CURLOPT_URL, $api);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($param));
## 結果を取得
$result = curl_exec($ch);
## コネクション切断
curl_close($ch);

## 連想配列にデコード
$data = json_decode($result, true);

## 月初日
$starttimestamp_date = date("Y") . "-" . date("m") . "-01";
## 翌月初日
$stoptimestamp_date = date("Y-m-d", strtotime($starttimestamp_date . " 1 month"  ));
$w = date( 'w',strtotime( $starttimestamp_date ));
## 月曜はじまりの場合
if( $w === "0"){
	$w = 7;
}
## 日曜はじまりの場合
#$w = $w + 1;

$cell = 0;
?>
<table style="border: 1px #666666 solid; border-collapse:collapse; font-color: #111111;"><tbody>
	<tr>
		<td style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("月") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("火") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("水") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("木") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("金") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #0000CC;background-color:#ccffff;"><?php echo("土") ?></td>
		<td style="border: 1px solid gray;font-size: 10px;color: #FF0000;background-color:#ffeeff;"><?php echo("日") ?></td>
	</tr>
	<tr>
	<?php
		## カレンダー最初の空白部分
		for($i =1;$i < $w;$i++){
	?>
		<td style="border: 1px solid gray;"></td>
	<?php } ?>
	<?php
		## 日付部分
		for($i =$starttimestamp_date;$i < $stoptimestamp_date;$i=date("Y-m-d", strtotime($i . " 1 day"  ))){
			$date = $data['datelist'][$i];
			if($date['week'] === "日"){
				$color="#FF0000";
			}
			else if($date['week'] === "土"){
				$color="#0000CC";
			}
			else if($date['holiday'] !== ""){
				$color="#FF0000";
			}
			else{
				$color="#000000";
			}
	?>
		<?php
			if($cell === 0){
				$cell = $w;
			}elseif($cell === 1){
		?>
		<tr>
		<?php }?>
			<td style="border: 1px solid gray;color: <?php echo($color) ?>;">
				<span style="font-size: 20px;"><?php echo(date("d", strtotime($i))) ?></span><br>
				<span style="font-size: 8px;"><?php echo("旧" .  $date['kyurekim']."月".$date['kyurekid'] . "日") ?></span><br>
				<?php echo($date['sekki']) ?><br>
				<?php echo($date['rokuyou']) ?><br>
				<?php echo($date['zyusi'] . "" . $date['zyunisi']) ?><br>
				<?php echo( $date['holiday']) ?>
			</td>
		<?php
			if($cell === 7){
				$cell = 1;
		?>
			</tr>
		<?php
		 }else{
			++$cell;
		 }
		 ?>
	<?php } ?>

</tbody></table>
				

  Copyright 2015 All rights reserved.