setLanguage('jp');
/*
$urlpp['dada']= explode('-', $urlp2);
$n1=$urlpp['dada'][0];//年
$m1=$urlpp['dada'][1];//月
$d1=$urlpp['dada'][2];//日
*/
//echo"$xxx";
//$urlp2 = explode('-', htmlspecialchars($_GET['date'], ENT_QUOTES));
$n1 = isset($_GET['date']) ? htmlspecialchars($_GET['date'], ENT_QUOTES) : '';
$m1 = isset($_GET['m1']) ? htmlspecialchars($_GET['m1'], ENT_QUOTES) : '';
$d1 = isset($_GET['d1']) ? htmlspecialchars($_GET['d1'], ENT_QUOTES) : '';
//URL分割
$uuurl = $_SERVER['REQUEST_URI'];
//echo"$uuurl";
$url['sections'] = explode('/', $uuurl);
$urlp0 = $url['sections'][0];
$urlp1 = $url['sections'][1];//calender
$urlp2 = $url['sections'][2];
$urlp3 = $url['sections'][3];
$urlp4 = $url['sections'][4];
/*
if($urlp2=="" or $n1==""){
$y = date('Y');
$rn1 = rand(1, 6);
$rr1 = mt_rand(1,6);
//$rr1 =shuffle($rr11);
$numbers = range(1, 6); // 1から6までの整数配列を生成
$key = array_rand($numbers); // 配列からランダムにキーを選択する
$random_number = $numbers[$key]; // 選択されたキーに対応する要素を取得する
// 301リダイレクトを行う
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://gori-gori.net/dainan/{$y}/{$rn1}/{$random_number}/");
exit;
}elseif($m1==="0"){
$y = date('Y');
$rn1 = rand(1, 5);
$rr1 = mt_rand(1,6);
//$rr1 =shuffle($rr11);
$numbers = range(0, 6); // 1から6までの整数配列を生成
$key = array_rand($numbers); // 配列からランダムにキーを選択する
$random_number = $numbers[$key]; // 選択されたキーに対応する要素を取得する
// 301リダイレクトを行う
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://gori-gori.net/dainan/{$y}/{$rn1}/{$random_number}/");
exit;
}elseif($m1>"5"){
$y = date('Y');
$rn1 = rand(1, 5);
$rr1 = mt_rand(1,6);
//$rr1 =shuffle($rr11);
$numbers = range(0, 6); // 1から6までの整数配列を生成
$key = array_rand($numbers); // 配列からランダムにキーを選択する
$random_number = $numbers[$key]; // 選択されたキーに対応する要素を取得する
// 301リダイレクトを行う
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://gori-gori.net/dainan/{$y}/{$rn1}/{$random_number}/");
exit;
}
elseif($d1>"6"){
$y = date('Y');
$rn1 = rand(1, 5);
$rr1 = mt_rand(1,6);
//$rr1 =shuffle($rr11);
$numbers = range(0, 6); // 1から6までの整数配列を生成
$key = array_rand($numbers); // 配列からランダムにキーを選択する
$random_number = $numbers[$key]; // 選択されたキーに対応する要素を取得する
// 301リダイレクトを行う
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://gori-gori.net/dainan/{$y}/{$rn1}/{$random_number}/");
exit;
}
//or $m1==="0" or $d1>"6"
*/
if($urlp3==1){//年代
$selm1="selected";
}elseif($urlp3==2){
$selm2="selected";
}elseif($urlp3==3){
$selm3="selected";
}elseif($urlp3==4){
$selm4="selected";
}elseif($urlp3==5){
$selm5="selected";
}elseif($urlp3==6){
$selm6="selected";
}
if($urlp4==0){//年代
$seld1="selected";
}elseif($urlp4==1){
$seld2="selected";
}elseif($urlp4==2){
$seld3="selected";
}elseif($urlp4==3){
$seld4="selected";
}elseif($urlp4==4){
$seld5="selected";
}elseif($urlp4==5){
$seld6="selected";
}elseif($urlp4==6){
$seld7="selected";
}
//$week1 = isset($_GET['d1']) ? htmlspecialchars($_GET['week1'], ENT_QUOTES) : '';
$years1= abs($n1);
$month1= abs($m1);
$days1 = abs($d1);
$hinokoto0=$years1."".$month1."".$days1."";
$hinokoto=$n1."年".$m1."月".$d1."日";
$hinokoto00=$month1."月".$days1."日";
$bouhontai1=$n1."-".$m1."-".$d1."";
date_default_timezone_set('Asia/Tokyo');
// 初期値
$y = date('Y');
$m = date('n');
$j = date('j');
$y2 = date('Y');
$y3 = date('Y',strtotime("+1 year"));
// 日付の指定がある場合
function get_nth_weekday_of_year($year, $weekday, $n) {
// 曜日の日本語表記の配列
$weekdays_japanese = array("日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日");
$day_name = $weekdays_japanese[$weekday];
$nth_weekdays = array();
for ($month = 1; $month <= 12; $month++) {
// 月初の日付を取得
$first_day_of_month = strtotime("$year-$month-01");
// 月初から最初の指定曜日までの日数を計算
$first_weekday = date('w', $first_day_of_month);
$days_to_add = $weekday - $first_weekday;
if ($days_to_add < 0) {
$days_to_add += 7;
}
$days_to_add += ($n - 1) * 7;
// 月初から最初の指定曜日までの日数を足して第n曜日の日付を計算
$nth_weekday = strtotime("+$days_to_add days", $first_day_of_month);
// 該当月の日付として有効な場合、配列に追加
if (date('n', $nth_weekday) == $month) {
$nth_weekdays[] = date("n月j日", $nth_weekday);
}
}
return $nth_weekdays;
}
// 使用例:
//echo"$n1";
$year = $n1;
$n = $m1; // 第n
$weekday = $d1; // 0が日曜日、1が月曜日、2が火曜日、3が水曜日、4が木曜日、5が金曜日、6が土曜日
$nth_weekdays = get_nth_weekday_of_year($year, $weekday, $n);
$weekdays_japanese = array("日曜日", "月曜日", "火曜日", "水曜日", "木曜日", "金曜日", "土曜日");
$day_name = $weekdays_japanese[$weekday - 0];
$stark = "{$year}年の第{$n}{$day_name}は";
foreach ($nth_weekdays as $date) {
//$stark .= "{$year}年の第{$n}{$day_name}は{$date}"."";
$stark .= ""."{$date}".""."、";
$starkbbb .= "{$date}"."";
$papa .="
| {$year}年 |
{$date}({$day_name}) |
";
}
$number_of_dates = count($nth_weekdays);
$nns999="$number_of_dates";
if(empty($starkbbb)){
$stark .="ない";
}
//echo"$starkbbb";
$stark .= "です。";
$title000="{$year}年の第{$n}{$day_name}は何日?いつ?";
/*
| 日付 |
{$hinokoto}{$week3}{$kk1} |
*/
//echo"$title000";
/*
if($urlp2 == '' or $urlp3 == '' or $urlp4 == '') {
// リダイレクト先URLを構築する
$urlp2 = date('Y');
$urlp3 = date('n');
$urlp4 = date('j');
// $redirect_url = "https://gori-gori.net/dainan/{$urlp2}/{$urlp3}/{$urlp4}/";
//$redirect_url = "https://gori-gori.net/";
// 301リダイレクトを行う
header("HTTP/1.1 301 Moved Permanently");
header("Location: https://gori-gori.net/dainan/{$urlp2}/{$urlp3}/{$urlp4}/");
exit;
}
*/
if(strpos($urlss,'index.php?') !== false){
//'abcd'のなかに'bc'が含まれている場合
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: https://gori-gori.net/dainan/{$n1}/{$m1}/{$d1}/" );
exit;
}
/*
else{
$date="$y";
$n1 = date("Y");
$m1 = date("m");
$d1 = date("d");
//header( "HTTP/1.1 301 Moved Permanently" );
//header( "Location: https://gori-gori.net/dainan/{$n1}/{$m1}/{$d1}/" );
//exit;
}
*/
/*
//echo"$arr_date";
$y = $n1;
// $ysss = date('Y');
//echo"$urlp0";
//echo"$urlp1";
//echo"$urlp2";
//exit;
//echo $_SERVER['REQUEST_URI'];
if($_SERVER['REQUEST_URI']==="/dainan//"){
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: https://gori-gori.net/" );
exit;
// echo"ok";
}
if(strpos($urlss,'https://gori-gori.net/') !== false){
//'abcd'のなかに'bc'が含まれている場合
header( "HTTP/1.1 301 Moved Permanently" );
//header( "Location: https://gori-gori.net/{$urlp1}/{$date}/" );
//exit;
}
if(strpos($urlss,'index.php?') !== false){
//'abcd'のなかに'bc'が含まれている場合
//header( "HTTP/1.1 301 Moved Permanently" );
//header( "Location: https://gori-gori.net/{$urlp1}/{$date}/" );
//exit;
}
$y = $n1;
if($n1>"2099"){
header( "HTTP/1.1 301 Moved Permanently" );
header( "Location: https://gori-gori.net/" );
exit;
}
*/
/*
$urlp2 = explode('-', htmlspecialchars($_GET['date'], ENT_QUOTES));
$n1 = isset($_GET['date']) ? htmlspecialchars($_GET['date'], ENT_QUOTES) : '';
$m1 = isset($_GET['m1']) ? htmlspecialchars($_GET['m1'], ENT_QUOTES) : '';
$d1 = isset($_GET['d1']) ? htmlspecialchars($_GET['d1'], ENT_QUOTES) : '';
$week1 = isset($_GET['d1']) ? htmlspecialchars($_GET['week1'], ENT_QUOTES) : '';
*/
if($month1=="1"){
//1月
$wa_m="睦月(むつき)";
$yo_m="January";
}elseif($month1=="2"){
//2月
$wa_m="如月(きさらぎ)";
$yo_m="February";
}
elseif($month1=="3"){
//3月
$wa_m="弥生(やよい)";
$yo_m="March";
}elseif($month1=="4"){
//4月
$wa_m="卯月(うづき)";
$yo_m="April";
}elseif($month1=="5"){
//5月
$wa_m="皐月(さつき)";
$yo_m="May";
}elseif($month1=="6"){
//6月
$wa_m="水無月(みなづき、みなつき)";
$yo_m="June";
}elseif($month1=="7"){
//7月
$wa_m="文月(ふみづき、ふづき)";
$yo_m="July";
}elseif($month1=="8"){
//8月
$wa_m="葉月(はづき、はつき)";
$yo_m="August";
}elseif($month1=="9"){
//9月
$wa_m="長月(ながつき、ながづき)";
$yo_m="September";
}elseif($month1=="10"){
//10月
$wa_m="神無月(かんなづき)";
$yo_m="October";
}elseif($month1=="11"){
//11月
$wa_m="霜月(しもつき)";
$yo_m="November";
}elseif($month1=="12"){
//12月
$wa_m="師走(しわす)";
$yo_m="December";
}
//昨日
$pppdate_111 = new DateTime();
$pppdate_111->modify('-1 day');
$pppdate_111 = $pppdate_111->format('Y-m-d');
if($urlp2===$pppdate_111){
$fldgs1="昨日";
$fldgs11="昨日は";
$fldgs12="昨日の";
$fldgs13="昨日です";
$fldgs14="昨日まで";
}
//今日
$pppdate111 = new DateTime();
$pppdate111 = $pppdate111->format('Y-m-d');
if($urlp2===$pppdate111){
$fldgs1="今日";
$fldgs11="今日は";
$fldgs12="今日の";
$fldgs13="今日です";
$fldgs14="今日まで";
}
//明日
$pppdate222 = new DateTime();
$pppdate222->modify('+1 day');
$pppdate222 = $pppdate222->format('Y-m-d');
if($urlp2===$pppdate222){
$fldgs1="明日";
$fldgs11="明日は";
$fldgs12="明日の";
$fldgs13="明日です";
$fldgs14="明日まで";
}
//明後日
$pppdate333 = new DateTime();
$pppdate333->modify('+2 day');
$pppdate333 = $pppdate333->format('Y-m-d');
if($urlp2===$pppdate333){
$fldgs1="あさって";
$fldgs11="あさっては";
$fldgs12="あさっての";
$fldgs13="あさってです";
$fldgs14="あさってまで";
}
//echo"$pppdate333"."が";
//echo"$fldgs11";
//print_r($national_holiday);
//ini_set( 'display_errors', 1 );
//libs ディレクトリへの絶対パスを指定
define('SMARTY_DIR', '../libs/');
//ファイルの読み込み
require_once(SMARTY_DIR . 'Smarty.class.php');
//$smarty->template_dir = __DIR__ . '/templates/';
//$smarty->compile_dir = __DIR__ . '/templates_c/';
date_default_timezone_set('Asia/Tokyo');
// Smarty オブジェクトを作成
$smarty = new Smarty();
// 現在時刻
$current_time = time();
// 次回の00:00時刻を計算
$next_midnight = strtotime('tomorrow midnight');
// 現在時刻から次の00:00までの秒数
$time_until_midnight = $next_midnight - $current_time;
// cache_lifetimeを次の00:00までに設定
$smarty->cache_lifetime = $time_until_midnight;
// もしキャッシュを利用するならば
$smarty->caching = Smarty::CACHING_LIFETIME_CURRENT; // キャッシュのライフタイム制御
$smarty = new Smarty();
//$smarty->caching = Smarty::CACHING_LIFETIME_CURRENT;
//$smarty->cache_lifetime =60*60; //60*60*24*360*5; //5年 単位は"秒"
/*
// 日本時間にタイムゾーンを設定
date_default_timezone_set('Asia/Tokyo');
// Smarty オブジェクトを作成
$smarty = new Smarty();
// 現在時刻
$current_time = time();
// 次回の00:00時刻を計算
$next_midnight = strtotime('tomorrow midnight');
// 現在時刻から次の00:00までの秒数
$time_until_midnight = $next_midnight - $current_time;
// cache_lifetimeを次の00:00までに設定
$smarty->cache_lifetime = $time_until_midnight;
// もしキャッシュを利用するならば
$smarty->caching = Smarty::CACHING_LIFETIME_CURRENT; // キャッシュのライフタイム制御
// テンプレートを表示する
$smarty->display('template.tpl');
*/
//テンプレート変数を代入
$template = 'index.tpl';
$cat = "$urlp2"."$urlp3"."$urlp4";
$id="$n1"."-"."$m1"."-"."$d1"."$urlp2"."$urlp3"."$urlp4";
//$id = $y;
//echo"$id";
$cache_id = sprintf('cache_%s-%d', $cat, $id);
if(!$smarty->isCached($template, $cache_id)){
// DBなどからデータを取得、テンプレート変数設定などの処理を行う。
// キャッシュが残っている場合はスキップする。
//$smarty->assign('title', 'Smarty Lesson!');
//$smarty->assign('class', 'red');
//$smarty->assign('name', "$id");
mb_language("ja");
mb_internal_encoding("utf-8");
//POSTの値を受け取って変数に割り当てる
//echo"$date";
$now = new DateTimeImmutable();
$years1 = $now->format("Y"); //年
$years0="$years1"-1810;
$years0 = gmp_strval($years0);
$month = $now->format("Y-m"); //今月
$days1 = $now->format("Y-m-d"); //今日
$start = date('Y', strtotime('$years0 year'));//月の始まり
//echo"$years0";
//echo $start;//月の始まり
$end = date('Y', strtotime('+80 year'));//月の終わり
//echo"$end";
//echo"$lastDate";
$years1="$n1";
$yearwa =toJpDate($n1,$m1,$d1);
//$yearwa=mb_substr($yearwa, 0, 5);
$yearwa=strstr($yearwa, '年', true);
$yearwa=$yearwa."年";
$years000_2 = date('Y', strtotime('-2 year'));//一昨年
$years000_1 = date('Y', strtotime('-1 year'));//去年
$years0001 = date('Y', strtotime('+0 year'));//今年
$years000_01 = date('Y', strtotime('+1 year'));//来年
$years000_02 = date('Y', strtotime('+2 year'));//再来年
//echo"$date";
//echo"$years000_2";
if($years1==$years000_2){
$titled="おととしの";
$title="$title000";
}elseif($years1==$years000_1){
$titled="去年の";
$title="$title000";
}elseif($years1==$years0001){
$titled="今年の";
$title="$title000";
}elseif($years1==$years000_01){
$titled="来年の";
$title="$title000";
}elseif($years1==$years000_02){
$titled="再来年の";
$title="$title000";
}else{
$titled="";
$title="$title000";
}
//echo"$title";
////////////////////////何週目
function getWeeks($date, $rollover)
{
$cut = substr($date, 0, 8);
$daylen = 86400;
$timestamp = strtotime($date);
$first = strtotime($cut . "00");
$elapsed = ($timestamp - $first) / $daylen;
$arr_date001 = explode('-', $date);
$y = (int)$arr_date001[0];
$m = (int)$arr_date001[1];
$m =sprintf('%02d', $m);
$d = "01";
$dd=$y.$m.$d;
//echo"$dd";
//$dd = str_replace('-','',$date);
$dates = date('w', strtotime("$dd"));
//echo"$dd";
//echo"$dates";
//配列を使用し、要素順に(日:0〜土:6)を設定する
$week1 = [
'0', //0
'1', //1
'2', //2
'3', //3
'4', //4
'5', //5
'6', //6
];
//echo"は"."$week1[$dates]";
if($week1[$dates]=="0"){
$weeks = 0;
//$week[$date];
}else{
$weeks = 1;
}
for ($i = 1; $i <= $elapsed; $i++)
{
$dayfind = $cut . (strlen($i) < 2 ? '0' . $i : $i);
$daytimestamp = strtotime($dayfind);
$day = strtolower(date("l", $daytimestamp));
if($day == strtolower($rollover)) $weeks ++;
}
return $weeks;
}
//
$shiyume = getWeeks("$urlp2", "sunday"); //outputs 2, for the second week of the month
$shiyume0 =$shiyume."";
$shiyume =$shiyume."週目";
//echo"$shiyume";
////////////////24せっき
//echo"$seki111";
function getSolarTerm($year, $month, $day) {
static $old = -1.0;
static $table = array(
0 => '春分',
1 => '清明',
2 => '穀雨',
3 => '立夏',
4 => '小満',
5 => '芒種',
6 => '夏至',
7 => '小暑',
8 => '大暑',
9 => '立秋',
10 => '処暑',
11 => '白露',
12 => '秋分',
13 => '寒露',
14 => '霜降',
15 => '立冬',
16 => '小雪',
17 => '大雪',
18 => '冬至',
19 => '小寒',
20 => '大寒',
21 => '立春',
22 => '雨水',
23 => '啓蟄'
);
//太陽黄経
$l1 = $this->longitude_sun($year, $month, $day, 0, 0, 0);
$l2 = $this->longitude_sun($year, $month, $day, 24, 0, 0);
$n1 = floor($l1 / 15.0);
$n2 = floor($l2 / 15.0);
return ($n1 != $n2) ? $table[$n2] : '';
}
$objDateTime = new DateTime();
$yyds1= $objDateTime->format('Y')."";//現在日付 2019-12-31
$yyds2= $objDateTime->format('n月')."";//現在日付 2019-12-31
$yyds3= $objDateTime->format('d日')."";//現在日付 2019-12-31
function day_of_the_week($w){
$aWeek = array(
'日曜日',//0
'月曜日',//1
'火曜日',//2
'水曜日',//3
'木曜日',//4
'金曜日',//5
'土曜日'//6
);
return $aWeek["$w"];
}
$youbi=day_of_the_week(date('w'));
$pdo = new PDO('mysql:charset=UTF8;dbname=ig1207_uribo;host=mysql654.db.sakura.ne.jp', 'ig1207', 'test1test1');
$stmt = $pdo->prepare("SELECT
`nen_id`,
DATE_FORMAT(nen_remarks1, '%Y-%m-%d') as `nen_remarks1`,
`nen_remarks2`,
`nen_remarks3`,
`nen_remarks4`,
`nen_remarks5`,
`nen_remarks6`
FROM wareki_nen WHERE DATE_FORMAT(nen_remarks1, '%Y-%m-%d') <= :destqq1 order by nen_id DESC limit 1 ");
//$stmt = $pdo->prepare($sql);
//$destqq1 = "$wp1";
//$destqq1 = ''.$destqq1.'';
//$n1 = str_pad("$n1", 3, 0, STR_PAD_LEFT);
$n1 = sprintf('%04d', "$n1");
$xxx="$n1"."-"."$m1"."-"."$d1";
$stmt->bindParam(':destqq1', $xxx, PDO::PARAM_STR);
// $stmt->bindParam( ':id', $id, PDO::PARAM_INT);
$res = $stmt->execute();
//echo"$xxx";
// (6) 該当するデータを取得
if( $res ) {
$data = $stmt->fetch();
//var_dump($data);
$nensuu0 .= $data['nen_remarks1'];
$yomi0 .= $data['nen_remarks4'];
$yomi .= $data['nen_remarks5'];
$yomi2 .= $data['nen_remarks6'];
if($yomi2>""){
$yomi2_2 .= $yomi2."の";
}else{
$yomi2_2 .= "";
}
}
//$nensuu0 = "1926-12-25";
$shouwaStartYear = intval(date('Y', strtotime($nensuu0))); // 元号の開始年
$ww12 = $shouwaStartYear - 1;
function calculateShouwa($datew) {
global $ww12;
$shouwaStart = "$nensuu0"; // 昭和元号の開始日
$datew = strtotime($datew);
$shouwaStartTimestamp = strtotime($shouwaStart);
if ($datew >= $shouwaStartTimestamp) {
$shouwaYear = date('Y', $datew) - $ww12;
return $shouwaYear;
} else {
return false;
}
}
//$xxx = "1976-12-12";
$datew = "$xxx";
$shouwaYear = calculateShouwa($datew);
//echo "$datew
";
//echo "$shouwaYear";
if (preg_match('/-/', $shouwaYear)) {
$yearwa="元号年号なし";
}else{
if($shouwaYear=="1"){
$udondai="「"."{$yomi0}"."元年」";
}
$yearwa="$yomi0".$shouwaYear."年".$udondai;
}
/*
$week = array("日", "月", "火", "水", "木", "金", "土");
$w = (int)date_format($arr_date, 'w');
$datetime = date_create($arr_date);
$w = (int)date_format($datetime, 'w');
$week[$w]="".$week[$w]."曜日";
$week0003=$week[$w];
$week01 = array("日", "月", "火", "水", "木", "金", "土");
$w01 = (int)date_format($arr_date, 'w');
$datetime00 = date_create($arr_date);
$w01 = (int)date_format($datetime00, 'w');
$week001[$w]="".$week01[$w01]."曜日";
$week000301=$week001[$w01];
*/
$eto_year=$date;
$nenetosss= $pcl->eto_year($eto_year);
//echo"$nenetosss";
$nenetosss00= neneto($nenetosss);
$eto = array("子年(ねずみどし)","丑年(うしどし)","寅年(とらどし)","卯年(うさぎどし)","辰年(たつどし)","巳年(みどし)","午年(うまどし)","未年(ひつじどし)","申年(さるどし)","酉年(とりどし)","戌年(いぬどし)","亥年(いのししどし)");
$eto1= ($year + 8) % 12;
$eto2 = $eto[$eto1];
/*
///年比較
//echo"$urlp2";
$daydays ="{$urlp2}";
$daykinen1 = new DateTime("{$daydays}");//記念日
$objDateTime = new DateTime();
$day2= $objDateTime->format('Y-m-d');//当日
//$day01=$obs;
//$day02=$obs1;
$dps="";
$day1 = new DateTime("{$daydays}");
$day2 = new DateTime("{$day2}");
if($day1<$day2){
$dps1="前";
$dps2="前";
$dps3="";
$made="は";
$made0="は何日前?";
$made0ppp="何日前?";
}elseif($day1>$day2){
$dps1="後";
$dps2="後";
$dps3="-";
$made="まで";
$made0="まであと何日?";
$made0ppp="何日後?";
}
else{
$dps1="";
$dps2="今日";
$dps3="";
$made="まで";
$made0="まであと何日?";
$made0ppp="何日後?";
}
$day2p1 =$day2->modify('-0 days');//1当日含まない
$interval1 = $day1->diff($day2p1);
$total_day1 = $interval1->format('日数で%a')."日"."$dps1";
$total_day11=$interval1->format('%y年%mヶ月%d日')."$dps2";
$total_day12=$interval1->format('%y歳')."";
$total_day12_1=$interval1->format('%y年')."";
$total_day12_2=$interval1->format('%y')."";
$total_day12=""."$dps3"."$total_day12";
$total_day13=$interval1->format('%y年%mヶ月%d日')."";
*/
function get_nth_week($d) {
// その年の 1月1日
$d0 = new DateTime($d->format('Y') . '-1-1');
// 1月1日の週の日曜日にする
$d0->sub(new DateInterval('P' . $d0->format('w') . 'D'));
// 1月1日の週の日曜日から、何週間離れているか
$diff = ($d->getTimestamp() - $d0->getTimestamp()) / 60 / 60 / 24 / 7;
// 整数化
$diff = floor($diff);
// ゼロ始まりなので、+1 して返す
return $diff + 1;
}
/*
$y = 2023; // 年
$m = 8; // 月
$d = 9; // 日
*/
$test_date = "$xxx";
$pp = date('Y-m-d', strtotime($test_date));
$d = new DateTime("$pp");
$waa = get_nth_week($d);
//echo "週: $waa";
////////////////////////////////////何日あるか
function day_diff($date1, $date2) {
// 日付をUNIXタイムスタンプに変換
$timestamp1 = strtotime($date1);
$timestamp2 = strtotime($date2);
// 何秒離れているかを計算
$seconddiff = abs($timestamp2 - $timestamp1);
// 日数に変換
$daydiff = $seconddiff / (60 * 60 * 24);
// 戻り値
return $daydiff;
}
$date22= "$n1";
//echo"$date22";
$date2= "$date22"."-12-31"; // 今年最後
$date001= "$date22"."-01-01"; // 今年最初
$date1="$daydays";
// 日付を関数に渡す
$day = day_diff("{$date1}", "{$date2}");
//echo"$day";
$day ="$day"+"1";//経過なんで1足す
//1年の日数
$day001 = day_diff("{$date001}", "{$date2}");
$day001 ="$day001"+"1";//経過なんで1日足す
if($day001=="366"){//日付が366ならうるうどし
$uruu1="366日あります。うるう年です";
}else{
$uruu1="365日あります。うるう年ではありません";
}
//echo $day001;
//残り日数
$latedays = $day-1;//経過日数
$latedayspp = $day;//経過日数
$latedays001 = $day001-($day-1);//残り
$hinokoto_1=$yearwa."".$hinokoto00;
$fld="";
$fld001="";
$fld003="";
$dsa="";
$fld002="";
$drec="kantou";
$ppda1="09";
$ppda2="9";
$ppda3="-09-01";
$daydaysk2 ="1923-09-01";
$daydayskyy2 ="1923";
$yyy2ixxxss = "/"."$m1"."/"."$d1";//誕生日
$ttttime="$yyy2ixxxss"." 00:00:00";
//$ttttime2="11時58分32秒";
// $objDateTime00 = new DateTime();//今年
// $dd3 = $objDateTime00->format("Y");
$date93 = new DateTime();
$ddds4=$date93->modify('-1 year')->format('Y');
$date94 = new DateTime();
$ddds3=$date94->modify('-0 year')->format('Y');
$date10 = new DateTime();
$ddds5=$date10->modify('+1 year')->format('Y');
$date0010 = new DateTime();
$ddds5000=$date0010->modify('+0 year')->format('m-d');//今日
// $ddds5=$date93->modify('+1 year')->format('Y');
//echo"$y";
//if($y == $ddds3 or $y > $ddds3){
$yyy2ivv = "$n1"."-"."$m1"."-"."$d1";//誕生日
$yyy2i = "$m1"."-"."$d1";//誕生日
$yyy2ippp = "$m1"."月"."$d1"."日";//誕生日
$month1_ = abs($m1);
$days1_ = abs($d1);
$yyy2ippp001 = "$month1_"."月"."$days1_"."日";//誕生日
$c2n2 = "$month1_"."-"."$days1_"."";
$xxs = $ddds5."-01-01";
$xxs25 = $ddds3."-12-25";
//echo"$yyy2ivv"."
";
//echo"$xxs";
// 正規表現パターン
$pattern1 = '/-01-01/';
$pattern24 = '/-12-24/';
$pattern25 = '/-12-25/';
// preg_match を使用して検索
if (preg_match($pattern1, $date)) {
if($yyy2ivv=="$xxs"){
$kaunto="$n1"."年まであと何日?";
$kaunto01="$n1"."年の正月まであと何日?";
$ppsqa="$kaunto01"."$yyy2ippp001"."の新年・正月・元旦・年越し・大晦日・ニューイヤー・カウントダウンも表示。";
$ppsqa2="$kaunto"."$yyy2ippp001"."新年・正月のカウントダウンも表示。";
$ptitle="正月・元旦・年越し・大晦日・ニューイヤー・カウントダウン";
}else{
$kaunto="次の";
$ppsqa="$kaunto"."$yyy2ippp001"."のカウントダウンも表示。";
$ppsqa2="$kaunto"."$yyy2ippp001"."のカウントダウンも表示。";
$ptitle="";
}
}
if (preg_match($pattern25, $date)) {
//echo"$yyy2ivv";
if($yyy2ivv=="$xxs25"){
$kaunto="$n1"."年のクリスマスまであと何日?";
$kaunto01="$n1"."年のクリスマスまであと何日?";
$ppsqa="$kaunto01"."$yyy2ippp001"."のクリスマス・カウントダウンも表示。";
$ppsqa2="$kaunto"."$yyy2ippp001"."クリスマスのカウントダウンも表示。";
$ptitle="クリスマス・カウントダウン";
}else{
$kaunto="次の";
$ppsqa="$kaunto"."$yyy2ippp001"."のカウントダウンも表示。";
$ppsqa2="$kaunto"."$yyy2ippp001"."のカウントダウンも表示。";
$ptitle="";
}
}
if (preg_match($pattern24, $date)) {
$kurisu24="24日はクリスマスイブです。メリークリスマスまでのカウントダウンはこっち。
";
}
if($kaunto==""){
$kaunto="次の";
}
$pdfname1="{$year}-{$urlp2}{$urlp3}{$urlp4}"."."."jpeg";
$fnames="./img/"."$pdfname1";
if (file_exists($fnames)) {
}else{
$fnames="./img/"."$pdfname1";
$width = 800;
$height = 800;
$img = imagecreatetruecolor($width, $height);
//$white = imagecolorallocate($img, 200, 200, 255);
$white = imagecolorallocate($img, 255, 255, 255);
imagefilledrectangle($img, 0, 0, $width-1, $height-1, $white);
$x = 100;
$y = 100;
// $tochi003=""."$qqq1"."円"."の"."$qqq2"."$tani1"."は"."$ans1"."".""."".""."となります";
//$tochi0003=""."$qqq1"."円"."の"."$qqq2"."$tani1"."="."$ans1"."$ans2".""."".""."";
// $tochi001=""."$qqq1"."$tani1"."は"."$ko01".""."$ans02".""."".""."";
//$tochi004=""."$qqq1"."円の"."$qqq2"."$tani1"."は"."".""."$tani1"."でどのくらい?"."";
//$tochi004=""."$qqq1"."円の"."$qqq2"."$tani1"."は"."".""."$tani1"."でどのくらい?"."";
// $tochi01 .=""."$qqq1_k"."円"."の"."$jikan1"."$tani1"."="."$ans1"."("."$ans2".")".""."です
";
$text = "{$title}{$yearwa}\n\n\n\n";
$font = "../ipamp.ttf";
$black = imagecolorallocate($img, 0, 0, 0);
imagettftext($img, 20, 0, $x, $y, $black, $font, $text);
imagejpeg($img,$fnames);
imagedestroy($img);
}
$gurls="{$year}-{$urlp2}{$urlp3}{$urlp4}"."."."jpeg";
$gazou1="
";
try {
$pdo = new PDO('mysql:host=mysql3109.db.sakura.ne.jp;dbname=haegiwa_umare1', 'haegiwa', '12igaaaigaaa');
// エラーがあれば例外がスローされるようにPDOのエラーモードを設定
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// SELECTクエリを準備
$stmt1 = $pdo->prepare("SELECT
reki_id,
reki_rem1,
reki_rem2,
reki_rem3,
reki_rem4,
reki_rem5,
reki_rem6
FROM umare1_rekishi WHERE reki_rem4 = :substring_value2 ORDER BY reki_rem6 ASC ");
// パラメータをバインド
$your_value2 = "$yyy2i"; // 6文字目から最後までの同じ値
//echo "";
$substring_value2 = $your_value2; // 6文字目から最後までの文字列を取得
$stmt1->bindParam(':substring_value2', $substring_value2, PDO::PARAM_STR);
// クエリを実行
$stmt1->execute();
// 結果を取得
while ($row = $stmt1->fetch(PDO::FETCH_ASSOC)) {
// データを使って何かをする
$rid = $row['reki_id']; // カラム名に置き換えてください
$rem1 = $row['reki_rem1']; // カラム名に置き換えてください
$rem2 = $row['reki_rem2']; // カラム名に置き換えてください
$rem3 = $row['reki_rem3']; // カラム名に置き換えてください
$rem4 = $row['reki_rem4']; // カラム名に置き換えてください
$rem5 = $row['reki_rem5']; // カラム名に置き換えてください
$rem6 = $row['reki_rem6']; // カラム名に置き換えてください
if($rid>""){
$totaks_reki2 .= ""."".$rem2.$yyy2ippp001." ".$rem3."
";
$totaks_reki2c .= "".$rem2.$yyy2ippp001.$rem3."";
}else{
$totaks_reki2 .="";
$totaks_reki2c .= "";
}
}
} catch (PDOException $e) {
echo 'エラー: ' . $e->getMessage();
// エラーのハンドリング
}
try {
$pdo = new PDO('mysql:host=mysql3109.db.sakura.ne.jp;dbname=haegiwa_umare1', 'haegiwa', '12igaaaigaaa');
// エラーがあれば例外がスローされるようにPDOのエラーモードを設定
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// SELECTクエリを準備
$stmt2 = $pdo->prepare("SELECT
kinen_id,
kinen_days1,
kinen_days2,
kinen_remerks
FROM kinenbi_kinen WHERE kinen_days2 = :substring_value2 ORDER BY kinen_id ASC ");
// パラメータをバインド
$your_value2 = "$c2n2"; // 6文字目から最後までの同じ値
//echo "";
$substring_value2 = $your_value2; // 6文字目から最後までの文字列を取得
$stmt2->bindParam(':substring_value2', $substring_value2, PDO::PARAM_STR);
// クエリを実行
$stmt2->execute();
// 結果を取得
while ($row = $stmt2->fetch(PDO::FETCH_ASSOC)) {
// データを使って何かをする
$rid = $row['kinen_id']; // カラム名に置き換えてください
$kdays1 = $row['kinen_days1']; // カラム名に置き換えてください
$kdays2 = $row['kinen_days2']; // カラム名に置き換えてください
$krem = $row['kinen_remerks']; // カラム名に置き換えてください
if($rid>""){
$totaks2 .= ""."".$krem."
";
$totaks2c .= ""."".$krem."";
}else{
$totaks2 .="";
$totaks2c .= "";
}
}
} catch (PDOException $e) {
echo 'エラー: ' . $e->getMessage();
// エラーのハンドリング
}
/*
新月・・・地球から見て月が太陽と同じ方向にあるとき (正確には、太陽黄経と月の視黄経の差が0°のとき)
上弦・・・新月から満月になる間の半月 (同90°)
満月・・・反対の方向にあるとき (同180°)
下弦・・・満月から新月になる間の半月 (同270°)
*/
//$full_mooo['d0']=$pcl->next_fullmoon($year="$n1", $month="$m1", $day="$d1", 0, 0, 0);
$nnn0=$full_mooo['d0'][0];//年
$nnm0=$full_mooo['d0'][1];//月
$nnd0=$full_mooo['d0'][2];//日
$d0m1 = sprintf('%02d', $nnn0);
$d0m2 = sprintf('%02d', $nnm0);
$d0m3 = sprintf('%02d', $nnd0);
$bou1="$d0m1"."-"."$d0m2"."-"."$d0m3";
if($bou1==$bouhontai1){
$moon_bow1="満月(望)";
}
//$new_mooo['d2']=$pcl->next_newmoon($year="$n1", $month="$m1", $day="$d1", 0, 0, 0);
//$new_mooo1=$pcl->longitude_moon($year="$n1", $month="$m1", $day="$d1", 0, 0, 0);
//echo"$mooo";
//$value3 = sprintf('%02d', $value3);
//print_r($new_mooo);
$nnn1=$new_mooo['d2'][0];//年
$nnm1=$new_mooo['d2'][1];//月
$nnd1=$new_mooo['d2'][2];//日
$d2m1 = sprintf('%02d', $nnn1);
$d2m2 = sprintf('%02d', $nnm1);
$d2m3 = sprintf('%02d', $nnd1);
$bou2="$d2m1"."-"."$d2m2"."-"."$d2m3";
if($bou2==$bouhontai1){
$moon_saku1="新月(朔)";
}
//上弦
//$jogen_mooo['d3']=$pcl->next_jo_gen_moon($year="$n1", $month="$m1", $day="$d1", 0, 0, 0);
//print_r($jogen_mooo['d3']);
$jonnn1=$jogen_mooo['d3'][0];//年
$jonnm1=$jogen_mooo['d3'][1];//月
$jonnd1=$jogen_mooo['d3'][2];//日
$d3m1 = sprintf('%02d', $jonnn1);
$d3m2 = sprintf('%02d', $jonnm1);
$d3m3 = sprintf('%02d', $jonnd1);
$jo1="$d3m1"."-"."$d3m2"."-"."$d3m3";
if($jo1==$bouhontai1){
$moon_jo1="下弦";
}
//echo"$moon_jo1";
//下弦
//$gegen_mooo['d4']=$pcl->next_ge_gen_moon($year="$n1", $month="$m1", $day="$d1", 0, 0, 0);
//print_r($gegen_mooo['d4']);
$gennn1=$gegen_mooo['d4'][0];//年
$gennm1=$gegen_mooo['d4'][1];//月
$gennd1=$gegen_mooo['d4'][2];//日
$d4m1 = sprintf('%02d', $gennn1);
$d4m2 = sprintf('%02d', $gennm1);
$d4m3 = sprintf('%02d', $gennd1);
$ge1="$d4m1"."-"."$d4m2"."-"."$d4m3";
//echo"$ge1"."$bouhontai1";
if($ge1==$bouhontai1){
$moon_ge1="上弦";
}
//echo"$moon_ge1";
$pdo = new PDO('mysql:charset=UTF8;dbname=ig1207_uribo;host=mysql654.db.sakura.ne.jp', 'ig1207', 'test1test1');
$stmt = $pdo->prepare("SELECT
moon_id,
moon_flg,
DATE_FORMAT(moon_days, '%Y-%m-%d') as `moon_days`
FROM moon8_b WHERE DATE_FORMAT(moon_days, '%Y-%m-%d') = :destqq1 order by moon_id DESC ");
//$stmt = $pdo->prepare($sql);
//$destqq1 = "$wp1";
//$destqq1 = ''.$destqq1.'';
//$n1 = str_pad("$n1", 3, 0, STR_PAD_LEFT);
$n1 = sprintf('%04d', "$n1");
$xxx="$date";
//$xxx2="5";//種類
$stmt->bindParam(':destqq1', $xxx, PDO::PARAM_STR);
//$stmt->bindParam(':destqq2', $xxx2, PDO::PARAM_STR);
// $stmt->bindParam( ':id', $id, PDO::PARAM_INT);
$res = $stmt->execute();
//echo"$xxx";
// (6) 該当するデータを取得
if( $res ) {
$data = $stmt->fetch();
//var_dump($data);
//1がいり2がで3が
/*
[1, 日の出
[2, 日の入り
[3, 新月
[4, 上弦
[5, 満月
[6, 下弦
*/
$moon_flg .= $data['moon_flg'];
if ($moon_flg === "1") {
//$mm_name = "日の出";
} elseif ($moon_flg === "2") {
//$mm_name = "日の入り";
} elseif ($moon_flg === "3") {
$mm_name = "新月(朔さく)";
} elseif ($moon_flg === "4") {
$mm_name = "上弦";
} elseif ($moon_flg === "5") {
$mm_name = "満月(望ぼう)";
} elseif ($moon_flg === "6") {
$mm_name = "下弦";
}
$moon_days .= $data['moon_days'];
$mm_name = "$mm_name";
//echo $moon_flg;
//echo $moon_days;
}
$urlp2=date(Y);
$urls="https://gori-gori.net/dainan/index.html";
/*
$fldgs1="昨日";
$fldgs11="昨日は";
$fldgs12="昨日の";
$fldgs13="昨日です";
$fldgs14="昨日まで";
*/
$tantan0 = <<< EOMtta0
第何週は何曜日/第何曜日
第n○曜日とは?
「第n○曜日」という表現は、特定の月内で特定の曜日が何回目に出現するかを表す言い方です。この形式は、カレンダーやスケジュールにおいて、特定の曜日を基準にイベントや活動を計画する際に非常に便利です。たとえば、「第2火曜日」や「第4木曜日」といった形で、月内の該当する曜日の回数を指定します。これは会議の設定やイベント、公共サービスのスケジュールなど、日常生活のさまざまな場面で使われます。
第n○曜日の基本的な考え方
「第n○曜日」とは、月の初めから数えてその曜日が何回目に出現するかを表します。たとえば、8月の「第1火曜日」といえば、8月の最初の火曜日を指し、月初が火曜日の場合は1日が「第1火曜日」になります。もし月初が別の曜日であれば、最初の火曜日はその翌週に位置することになります。このように、「第n○曜日」は月の中で曜日がどの回に出現するかを基準にして表現されます。
具体例を挙げると、8月において「第1月曜日」は1日であり、「第2月曜日」は8日、「第3月曜日」は15日となります。同じように、「第3火曜日」であれば16日、「第4木曜日」であれば25日が該当します。このように、月内で曜日を数えることによって、特定の日付を曜日ベースで固定することが可能になります。
月による違い
月によって日数が異なるため、曜日が何回目に現れるかは月ごとに異なります。31日まである月(1月や7月など)では、「第5○曜日」が存在する場合がありますが、30日までの月(4月や6月など)や28日しかない2月では、「第5○曜日」が存在しないこともあります。特に2月は日数が少ないため、他の月と比べて曜日の回数に違いが出やすいです。例えば、2月には第5週の曜日がないため、「第5月曜日」や「第5金曜日」などは存在しないことが多いです。
第n○曜日の活用例
「第n○曜日」という表現は、特定の曜日に定期的な予定を立てる際に非常に役立ちます。たとえば、企業や団体が「毎月第2土曜日にミーティングを開催する」といった形で使用されることが一般的です。このようなスケジュール設定をすることで、月の異なる日付にもかかわらず、同じ曜日に予定を繰り返すことができます。また、自治体のゴミ収集やリサイクルの日も「第1火曜日」「第4金曜日」など、曜日単位で決められていることが多く、住民が日程を把握しやすくなっています。
さらに、イベントや祝日もこの方式を採用することがあります。例えば、日本の「敬老の日」は「9月の第3月曜日」として定められており、毎年異なる日付に祝日が設定されますが、同じ曜日に祝われるため、スケジュールを立てやすいというメリットがあります。
「第6〜曜日」の存在について
「第6何曜日」という概念は通常のカレンダーには存在しません。通常、各月には4回から多くても5回の日曜日があります。1ヶ月に6回の日曜日が発生することはないため、「第6日曜日」はありません。多くても「第5何曜日」となります。
まとめ
「第n○曜日」という表現は、日常生活やビジネスの場面で頻繁に活用され、特定の曜日を基準にした予定やスケジュールを立てるのに便利です。月の初めから数えて、その曜日が何回目に出現するかを確認しながら予定を立てることで、効率的なスケジュール管理が可能になります。月ごとに曜日の回数に違いが出ることに注意しつつ、この方法を活用していくことが大切です。
今日はなんの日?
西暦{$urlp2}年の暦一覧表
元号(年号)・和暦一覧
EOMtta0;
function getClosest($search, $arr) {
$closest = null;
foreach ($arr as $item) {
if ($closest === null || abs($search - $closest) > abs($item - $search)) {
$closest = $item;
}
}
return $closest;
}
$tantan01 = <<< EOMtta01
EOMtta01;
$tantan02 .= <<< EOMtta02
EOMtta02;
//}
//}
$tantan02 .= <<< EOMtta02
EOMtta02;
function calendar($year = '', $month = '') {
if (empty($year) && empty($month)) {
$year = date('Y');
$month = date('n');
}
//月末の取得
$l_day = date('j', mktime(0, 0, 0, $month + 1, 0, $year));
//初期出力
$html = <<
| |
{$year}年{$month}月 |
|
| 日 |
月 |
火 |
水 |
木 |
金 |
土 |
\n
EOM;
$lc = 0;
// 月末分繰り返す
for ($i = 1; $i < $l_day + 1;$i++) {
$classes = array();
$class = '';
// 曜日の取得
$week = date('w', mktime(0, 0, 0, $month, $i, $year));
// 曜日が日曜日の場合
if ($week == 0) {
$a1 = $lc++;
//$a1=$a1+1;
//$a1_max = max($a1, $a1_max); // $a1の最大値を更新する
$html .= "\t\t\n";
}
// 1日の場合
if ($i == 1) {
if($week != 0) {
$html .= "\t\t
\n";
$lc++;
}
$html .= repeatEmptyTd($week);
}
if ($week == 6) {
$classes[] = 'sat';
} else if ($week == 0) {
$classes[] = 'sun';
}
if ($i == date('j') && $year == date('Y') && $month == date('n')) {
// 現在の日付の場合
$classes[] = 'today';
}
if (count($classes) > 0) {
$class = ' class="'.implode(' ', $classes).'"';
}
$html .= "\t\t\t".'| '.$i.' | '."\n";
// 月末の場合
if ($i == $l_day) {
$html .= repeatEmptyTd(6 - $week);
}
// 土曜日の場合
if ($week == 6) {
$html .= "\t\t
\n";
}
}
if ($lc < 6) {
$html .= "\t\t\n";
$html .= repeatEmptyTd(7);
$html .= "\t\t
\n";
}
if ($lc == 4) {
$html .= "\t\t\n";
$html .= repeatEmptyTd(7);
$html .= "\t\t
\n";
}
$html .= "\t\n";
$html .= "\n";
return $html;
}
function repeatEmptyTd($n = 0) {
return str_repeat("\t\t | \n", $n);
}
$as1 =calendar($n1, 1);
$as2 =calendar($n1, 2);
$as3 =calendar($n1, 3);
$as4 =calendar($n1, 4);
$as5 =calendar($n1, 5);
$as6 =calendar($n1, 6);
$as7 =calendar($n1, 7);
$as8 =calendar($n1, 8);
$as9 =calendar($n1, 9);
$as10 =calendar($n1, 10);
$as11 =calendar($n1, 11);
$as12 =calendar($n1, 12);
$fff1 = <<< DDD2
DDD2;
$tantan03 .= <<< EOMtta03
EOMtta03;
require_once("../tantan03.php");
$tantan03 .= <<< EOMtta03
EOMtta03;
//require_once("../tantan04.php");
$tantan03 .= <<< EOMtta03
EOMtta03;
/*
*/
/*
echo"$tantan0";
echo"$tantan01";
echo $tantan02;
//echo"";
echo "$tantan002";
echo"";
echo"$tantan0023";
echo"";
echo"$tantan03";
*/
$tantan04 = <<< EOMtta04
EOMtta04;
//echo"$tantan04";
$sss="$tantan0"
."$tantan01"
."$tantan02"
."$tantan002"
."$tantan0023"
."$tantan03"
."$tantan04";
$smarty->assign('name', "$sss");
}
$smarty->display($template, $cache_id);
?>
= 20190501) { // 2019年5月1日から令和
$era = '令和';
$jpYear = $year - 2018;
} elseif ($date >= 19890108) { // 1989年1月8日から平成
$era = '平成';
$jpYear = $year - 1988;
} elseif ($date >= 19261225) { // 1926年12月25日から昭和
$era = '昭和';
$jpYear = $year - 1925;
} elseif ($date >= 19120730) { // 1912年7月30日から大正
$era = '大正';
$jpYear = $year - 1911;
} elseif ($date >= 18680125) { // 1868年1月25日から明治
$era = '明治';
$jpYear = $year - 1867;
}elseif ($date >= 18650501){ // 1865年5月1日慶応
$era = '慶応';
$jpYear = $year - 1864;
} elseif ($date >= 18640327){ // 1864年3月27日から元治
$era = '元治';
$jpYear = $year - 1863;
} elseif ($date >= 18610329){ // 1861年3月29日から文久
$era = '文久';
$jpYear = $year - 1860;
} elseif ($date >= 18600408){ // 1860年4月8日から万延
$era = '万延';
$jpYear = $year - 1859;
} elseif ($date >= 18541117){ // 1855年1月15日から安政
$era = '安政';
$jpYear = $year - 1853;
/*
if($year=="1855"){
$era1 = "1、";
}
$era = $era."$era1";
*/
} elseif ($date >= 18480401){ // 1848年4月1日から嘉永
$era = '嘉永';
$jpYear = $year - 1847;
} elseif ($date >= 18450109){ // 1845年1月9日から弘化
/*
弘化元年は西暦1845年1月9日から同2月6日までの短い期間であるため、和暦と西暦を一対一で対応させようとする場合、天保15年=弘化元年=西暦1844年、弘化2年=西暦1845年となって実際とはずれが生じる。
*/
$era = '弘化';
$jpYear = $year - 1843;
if($year=="1845"){
$era1 = "1、";
}
$era = $era."$era1";
} elseif ($date >= 18310123){ // 1831年1月23日から天保
$era = '天保';
$jpYear = $year - 1830;
} elseif ($date >= 18180526){ // 1818年5月26日から文政
$era = '文政';
$jpYear = $year - 1817;
} elseif ($date >= 18040322){ // 1804年3月22日から文化
$era = '文化';
$jpYear = $year - 1803;
} elseif ($date >= 18010205){ // 1789年2月19日から享和
$era = '享和';
$jpYear = $year - 1800;
} elseif ($date >= 17890219){ // 1789年2月19日から寛政
$era = '寛政';
$jpYear = $year - 1788;
} elseif ($date >= 17810425){ // 1781年4月25日から天明
$era = '天明';
$jpYear = $year - 1780;
} elseif ($date >= 17721210){ // 1772年12月10日から安永
$era = '安永';
$jpYear = $year - 1771;
} elseif ($date >= 17640630){ // 1764年6月30日から安政
$era = '明和';
$jpYear = $year - 1763;
} elseif ($date >= 17511214){ // 1751年12月14日から宝暦
$era = '宝暦';
$jpYear = $year - 1750;
} elseif ($date >= 17480805){ // 1748年8月5日から寛延
$era = '寛延';
$jpYear = $year - 1747;
} elseif ($date >= 17440403){ // 1744年4月3日から延享
$era = '延享';
$jpYear = $year - 1743;
} elseif ($date >= 17410412){ // 1741年4月12日から寛保
$era = '寛保';
$jpYear = $year - 1740;
} elseif ($date >= 17360607){ // 1736年6月7日から元文
$era = '元文';
$jpYear = $year - 1735;
} elseif ($date >= 17160809){ // 1716年8月9日から元文
$era = '享保';
$jpYear = $year - 1715;
} elseif ($date >= 17110611){ // 1711年6月11日から正徳
$era = '正徳';
$jpYear = $year - 1710;
} elseif ($date >= 17040416){ // 1704年4月16日から宝永
$era = '宝永';
$jpYear = $year - 1703;
} elseif ($date >= 16881023){ // 1688年10月23日から元禄
$era = '元禄';
$jpYear = $year - 1687;
} elseif ($date >= 16840405){ // 1684年4月5日から貞享
$era = '貞享';
$jpYear = $year - 1683;
} elseif ($date >= 16811109){ // 1681年11月9日から天和
$era = '天和';
$jpYear = $year - 1680;
} elseif ($date >= 16731030){ // 1673年10月30日から延宝
$era = '延宝';
$jpYear = $year - 1672;
} elseif ($date >= 16610523){ // 1661年5月23日から寛文
$era = '寛文';
$jpYear = $year - 1660;
} elseif ($date >= 16580821){ // 1658年8月21日から万治
$era = '万治';
$jpYear = $year - 1657;
} elseif ($date >= 16550518){ // 1655年5月18日から明暦
$era = '明暦';
$jpYear = $year - 1654;
} elseif ($date >= 16521020){ // 1652年10月20日から承応
$era = '承応';
$jpYear = $year - 1651;
} elseif ($date >= 16480407){ // 1648年4月7日慶安
$era = '慶安';
$jpYear = $year - 1647;
} elseif ($date >= 16450113){ // 1645年1月13日から正保
$era = '正保';
$jpYear = $year - 1644;
} elseif ($date >= 16240417){ // 1624年4月17日から寛永
$era = '寛永';
$jpYear = $year - 1623;
} elseif ($date >= 16150905){ // 1615年9月5日から元和
$era = '元和';
$jpYear = $year - 1614;
} elseif ($date >= 15961216){ // 1596年12月16日から慶長
$era = '慶長';
$jpYear = $year - 1596;
} elseif ($date >= 15930110){ // 1593年1月10日から文禄
$era = '文禄';
$jpYear = $year - 1592;
} elseif ($date >= 15730825){ // 1573年8月25日から文禄
$era = '天正';
$jpYear = $year - 1572;
}
else {//1570年5月27日から元亀
$era = '元亀';
$jpYear = $year - 1569;
}
if ($jpYear == 1) {
$wareki = $era . '元年';
} else {
$wareki = $era . $jpYear . '年';
}
return $wareki . $month . '月' . $day . '日';
}
?>