テレットブログ

【PHP】 phpのdate(日付関数)のまとめ

2020年05月15日
image

PHP|data


日付と時刻は、SQLクエリの実行中またはWebサイトなど、PHPで最も頻繁に使用される操作の一部です。
PHPでは定義済み関数を提供します。

日付と時刻に関するPHPの事前定義された関数のいくつかを以下で説明します。
 

1.php date()関数

 

PHPのdate()関数は、タイムスタンプをより読みやすい日付と時刻の形式に変換します。

date()関数とはなにか
コンピューターは、UNIXタイムスタンプと呼ばれる形式で日付と時刻を格納します。これは、Unixエポックの開始(1970年1月1日のグリニッジ標準時の真夜中、つまり1970年1月1日00:00:00 GMT)からの秒数として時間を測定します。
これは人間が読むには実用的でない形式であるため、PHPはタイムスタンプを人間が読みやすく理解しやすい形式に変換します。

$today = date("Y/m/d");

年/月/日 を出力

現在日時

<? php
echo date("Y/m/d h:i:s A");
?>

 

出力:
2020/05/16 12:40:59 AM


2.PHPのtime()関数


time()関数は、現在の時刻をUnixタイムスタンプ(UNIXエポックの開始からの秒数:1970年1月1日00:00:00 GMT)として取得するために使用されます。

 
<? php
$timestamp = time(); 
echo($timestamp); 
?>
 出力
1589557696
 

3.PHP mktime()関数


mktime()関数は、特定の日時のタイムスタンプを作成するために使用されます。
日時が指定されていない場合、現在の日時のタイムスタンプが返されます。

 
<?php
echo mktime(23, 21, 50, 11, 25, 2020); 
?>
 出力
1606314110



4.便利関数メモ

 

1. 1ヶ月マイナス

 

<?php

$date1 = "2020-05-16";
function wareki_minus($date1){

  $wdate = strtotime($date1 . '-01'); // 開始年月をタイムスタンプに
  $wdate = strtotime('-1 month', $wdate);
  $str = date('Y-m-d', $wdate);
  return $str;

}
?>

   

2. 日付を年月日にする

 

<?php
    function date_wareki($str){
        list($year, $month, $day, $time) = preg_split(("/[\s,-]/"), $str );
        $data1wareki = ''.$year.'年'.$month.'月'. $day .'日';
        return $data1wareki;
    }
?>

3.西暦を和暦に(令和対応)

 

<?php
// 西暦 => 和暦
$str = "2020-05-16";
    function wareki($str) {

        list($year, $month, $day) = preg_split(("/[\s,-]/"), $str );
        $data1wareki = ''.$year.'年'.$month.'月'. $day .'日';


        $eras = [
            ['year' => 2018, 'name' => '令和'],
            ['year' => 1988, 'name' => '平成'],
            ['year' => 1925, 'name' => '昭和'],
            ['year' => 1911, 'name' => '大正'],
            ['year' => 1867, 'name' => '明治']
        ];

        foreach($eras as $era) {

            $base_year = $era['year'];
            $era_name = $era['name'];

            if($year > $base_year) {

                $era_year = $year - $base_year;

                if($era_year === 1) {

                    return $era_name .'元年' . $month . '月';

                }

                return $era_name . $era_year .'年' . $month . '月';

            }

        }

        return null;

    }

echo wareki($str);

?>

結果

令和2年05月



4.月の始まりの日(月初日)を知る

 

<?php

$str = "2020-05-16";
function month_start($str){
  return date('Y-m-d', strtotime('first day of ' . $str));
}

echo month_start($date1);
?>

結果:
2020-05-01



5.月の終わりの日(月末)を知る

 

<?php
$str = "2020-05-16";
    function month_last($str){
      return date('Y-m-d', strtotime('last day of ' . $str));
    }

echo month_last($date1);
?>

結果:
2020-05-31
 



6.その日の曜日を取得(知る)

 

<?php
$str = "2020-05-16";
    function getYobi($str){
        list($year, $month, $day) = preg_split(("/[\s,-]/"), $str );
        $datetime = new DateTime();
        $datetime->setDate($year, $month, $day);
        $week = array("日", "月", "火", "水", "木", "金", "土");
        $w = (int)$datetime->format('w');
        return $week[$w];        
    }
echo getYobi($str);
?>

結果



よく使う日付関数の紹介でした。

 


新着記事

image

conoha vps で postfix にDKIMをセットする

2025年06月02日
# メールサーバー設定作業レポート ## 1. 作業概要 ConoHa
Read more →
image

shopipyのページネーションについて

2023年11月15日
Shopify APIのレスポンスヘッダーには、ページネーションに関す
Read more →
image

Git-ftpを使ったファイルアップロードの方法

2023年04月20日
タイトル: Git-ftpを使ったファイルアップロードの方法 概要
Read more →
image

ChatGPTとjQueryの組み合わせで新しい時代のウェブ開発をリード

2023年04月19日
近年、AI技術がウェブ開発の分野においても急速に浸透しています。特に、ChatG
Read more →
image

ChatGPTで日本語をマスター!次世代AI技術を活用したコミュニケーションの強化

2023年04月18日
ChatGPTは、OpenAIが開発した最先端のAI技術であり、自然言語処理(N
Read more →
Choose Colour