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



4

25
仏滅
令和8年
10

06
水無月
・ソース 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>
		<tr><td style="color: <?php echo($color) ?>;">
			<?php if($date['hitotubuflg'] == "true"){echo("一粒万倍日<br>");}?>
			<?php if($date['tensyabiflg'] == "true"){echo("天赦日<br>");}?>
			<?php if($date['daimyoubiflg'] == "true"){echo("大明日<br>");}?>
		</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: 月めくりのカレンダーにしてみました。
06月
01
旧4月16日

先勝
丙午


大明日
02
旧4月17日

友引
丁未


大明日
03
旧4月18日

先負
戊申


04
旧4月19日

仏滅
己酉


大明日
05
旧4月20日

大安
庚戌


大明日
06
旧4月21日
芒種
赤口
辛亥


大明日
07
旧4月22日

先勝
壬子


08
旧4月23日

友引
癸丑


09
旧4月24日

先負
甲寅


10
旧4月25日

仏滅
乙卯


11
旧4月26日

大安
丙辰


大明日
12
旧4月27日

赤口
丁巳


一粒万倍日
13
旧4月28日

先勝
戊午


一粒万倍日
大明日
14
旧4月29日

友引
己未


大明日
15
旧5月1日

大安
庚申


大明日
16
旧5月2日

赤口
辛酉


大明日
17
旧5月3日

先勝
壬戌


18
旧5月4日

友引
癸亥


19
旧5月5日

先負
甲子


20
旧5月6日

仏滅
乙丑


21
旧5月7日
夏至
大安
丙寅


22
旧5月8日

赤口
丁卯


23
旧5月9日

先勝
戊辰


24
旧5月10日

友引
己巳


一粒万倍日
大明日
25
旧5月11日

先負
庚午


一粒万倍日
大明日
26
旧5月12日

仏滅
辛未


大明日
27
旧5月13日

大安
壬申


大明日
28
旧5月14日

赤口
癸酉


大明日
29
旧5月15日

先勝
甲戌


30
旧5月16日

友引
乙亥


・ソース 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 width="100" style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("月") ?></td>
		<td width="100" style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("火") ?></td>
		<td width="100" style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("水") ?></td>
		<td width="100" style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("木") ?></td>
		<td width="100" style="border: 1px solid gray;font-size: 10px;color: #000000;"><?php echo("金") ?></td>
		<td width="100" style="border: 1px solid gray;font-size: 10px;color: #0000CC;background-color:#ccffff;"><?php echo("土") ?></td>
		<td width="100" 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"  ))){

			if(isset($data['datelist'][$i])){
				$date = $data['datelist'][$i];
				if($date['week'] === "日"){
					$color="#FF0000";
				}
				else if($date['week'] === "土"){
					$color="#0000CC";
				}
				else if($date['holiday'] !== ""){
					$color="#FF0000";
				}
				else{
					$color="#000000";
				}
			}
			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: 12px;"><?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']) . "<br>"?><br>
				<span style="color: #FF0000"><?php if($date['hitotubuflg'] == "true"){echo("一粒万倍日<br>");}?></span>
				<span style="color: #FF0000"><?php if($date['tensyabiflg'] == "true"){echo("天赦日<br>");}?></span>
				<span style="color: #FF0000"><?php if($date['daimyoubiflg'] == "true"){echo("大明日<br>");}?></span>
		<?php
			if($cell === 7){
				$cell = 1;
		?>
			</tr>
		<?php
		 }else{
			++$cell;
		 }
		 ?>
	<?php } ?>

</tbody></table>
				

  Copyright 2015 All rights reserved.