---
# System prepended metadata

title: 時間函式
tags: [PHP基礎課程]

---

---
title: 時間函式
tags: PHP基礎課程
---

日期函式
===
1. PHP基本時間單位是秒 C是JavaScript毫秒 linex是微秒
2. XAMPP給的時間是德國 格林威治的時間跟實際時間差七個小時


date( "Y-m-d" ,$time)
---
1. "Y-m-d"是函式的樣板/模板
2. $time通常指秒數/毫秒（千分之一秒）,每個作業系統的起算時間不一樣
3. d=>有前導0 當字串 顯示比較好看 j=>沒有前導0 當數字使用 比較偏向用來運算
```php=
    echo date("Y-m-d H:i:s");
```

strtotime("+1 days" .$date_string)
---
1. 比較老派的工程師會喜歡用mktime(但mktime不好用的原因是要放進六個參數才能使用)
2. 可自己加減天數不用自己算
3. 把日期格式轉成時間
4. 日期時間的字串要盡量用最不會出錯的時間日期字串格式
    如:yyyy-mm-dd hh:mm:ss
5. 第一個參數除了放時間以外還可以拿來運算
6. 計算時間時要問清楚 要不要去頭尾的天數
7. 如果帶入now 會給當下的時間
```php=
   $time="2021-10-01 10:12:30";
    $s=strtotime($time);//$s=second
    echo $time;
    echo "<br>";
    echo $s;

    echo date("西元 Y 年 m 月 d 日 l",$s);
```

date_default_timezone_set("地區")
---
1. 可設定時區
2. 沒設定的話會顯示格林威治時間
```php=
    date_default_timezone_set("Asia/Taipei");
    echo date("Y-m-d H:i:s");
```
date_diff
---
1. diff=different
2. 這個函式會用後面的日期減前面的日期
3. 用在大範圍
4. 86400是一天的秒數