【WP】日付の前についている0を消す・曜日を日本語で出力する【PHP】

WordPress
スポンサーリンク

2021/01/31
こんな風に表示されている日付の0をなくしたいねん

PHPのdeta関数

PHPの日付や時間するときはdate関数を使って日付を表示させます。

date(フォーマット);

 

そのdate関数のフォーマットですが、こんな風に書かれていませんか?

echo date('Y年m月d日');

このように書いた場合、「2021年01月31日」と出力されます。
date関数の()内のフォーマットの文字列を変えるだけで、先頭の0を抜いたり、英語表示で表示させたりすることができます。

 

date関数のフォーマット文字列一覧

出力 フォーマット 説明
2021 Y 西暦4桁
21 y 西暦2桁
01 m 2桁
1 n 先頭の0無し
Jan M 英語(略語)
January F 英語
01 d 2桁
1 j 先頭の0無し
曜日 Sun D 英語(略語)
Sunday
l
英語
0 w ※数字で出力(下記で説明)
 時間(時)  17  H  24時間表記
 17  G 24時間表記(0無し)
 05  h 12時間表記
 5  g 12時間表記(0無し)
 時間(分)  01  i 2桁
時間(秒)  01  s 2桁
 am/pm  am  a  小文字
 AM  A  大文字

 

echo date('Y年n月j日');
こう書けば、先頭の0を抜いた2021年1月31日と出力されます。

 

曜日を日本語で出力する

曜日を出力するフォーマットですが、
echo date('D');やecho date('l');
だとSun、Sundayと英語で出力されます。

これを日本語にしたい場合はdate(‘w’)を使うことで、日本語で表示させることができます。
date(‘w’)は日曜日は0,月曜日は1のように数字を返しますが、
日本語の曜日を配列に格納しておくことで、日本語表記にできます。

少し難し感じがしますがほとんどお決まりのコードがあり、このコードをコピペして使えば間違いありません。

 

weekという配列に日本語の曜日を入れる

$week = array(
'日',
'月',
'火',
'水',
'木',
'金',
'土' );

 

それを出力する

echo $week[date('w')]

 

出力される文字

これでOKです。
「日曜日」などと表記させたい場合は、日曜日から順に土曜日までを配列に入れればその通りに表記されます。


ワードプレスを使うようになってからPHPの勉強を始める人は多いと思います。私もその1人です。
HTMLやCSSとは全く違う言語なので時間はかかりますが、コツコツ学んでいつかしっかりと自分のものにしていきたいですですね。

コメント

タイトルとURLをコピーしました