日付
登録日:2023-01-06
更新日:2024-09-11
PHP
@
ms
date php
date('Y/m/d', strtotime('+7 day'));
strtotime
2038年問題
利用しているOSが64ビットで、「PHP」自体が 64bit ビルドにすることで回避
DateTime型を使う
#### 年 (Year)
- **`Y`**: 4桁の西暦年 (例: 2024)
- **`y`**: 2桁の西暦年 (例: 24)
#### 月 (Month)
- **`m`**: 2桁の月 (例: 09)
- **`n`**: 先行するゼロなしの月 (例: 9)
- **`M`**: 英語の省略された月名 (例: Sep)
- **`F`**: 英語のフルスペルの月名 (例: September)
#### 日 (Day)
- **`d`**: 2桁の日 (例: 09)
- **`j`**: 先行するゼロなしの日 (例: 9)
- **`D`**: 英語の省略された曜日 (例: Mon)
- **`l`**: 英語のフルスペルの曜日 (例: Monday)
- **`S`**: 日付の序数表示 (例: 1st, 2nd, 3rd, 4th など)
#### 時間 (Hour)
- **`H`**: 24時間表記の2桁の時 (例: 13)
- **`G`**: 24時間表記の先行するゼロなしの時 (例: 13)
- **`h`**: 12時間表記の2桁の時 (例: 01)
- **`g`**: 12時間表記の先行するゼロなしの時 (例: 1)
- **`A`**: AM/PMの大文字表記 (例: PM)
- **`a`**: am/pmの小文字表記 (例: pm)
#### 分 (Minute)
- **`i`**: 2桁の分 (例: 05)
#### 秒 (Second)
- **`s`**: 2桁の秒 (例: 09)
#### その他
- **`T`**: タイムゾーン (例: UTC, GMT)
- **`O`**: GMTからの時差 (例: +0900)
- **`U`**: Unixタイムスタンプ(1970年1月1日からの秒数) (例: 1633025836)
### `date()`関数の使用例
#### 例 1: `Y/m/d` の形式
```php
echo date('Y/m/d');
// 出力: 2024/09/09
```
#### 例 2: フルスペルの曜日と月
```php
echo date('l, F j, Y');
// 出力: Monday, September 9, 2024
```
#### 例 3: 12時間形式での時間表示
```php
echo date('h:i A');
// 出力: 01:45 PM
```
#### 例 4: Unixタイムスタンプの表示
```php
echo date('U');
// 出力: 1633025836
```
数値日付を変換
$time_value = '201703220134';
echo date('Y年m月d日 H:i',strtotime($time_value));