首頁  >  文章  >  後端開發  >  聊聊php將時間轉時間戳記的多種方式

聊聊php將時間轉時間戳記的多種方式

PHPz
PHPz原創
2023-03-29 16:24:321631瀏覽

在PHP中,時間戳通常用來表示一個特定時間點。時間戳記是從 Unix Epoch(1970年1月1日00:00:00 UTC)開始至指定時間點之間所經過的秒數,它是一種獨立於時區的時間表示方式。

在某些情況下,我們需要將特定的日期時間轉換成時間戳,以便進行比較或其他處理。在PHP中,可以透過多種方式實現這一目標。下面,我們將介紹一些常見的方法。

方法一:strtotime

PHP的strtotime函數可以將一個人類可讀的日期時間字串轉換成一個時間戳記。此函數的語法如下:

strtotime(string $time [, int $now = time() ])

其中,$time參數是需要轉換的日期時間字串,$now參數是可選的參考時間點,預設為目前時間。此函數傳回值為一個時間戳記。

例如,將2021年6月30日上午10點30分轉換成時間戳:

<?php
$time_str = "2021-06-30 10:30:00";
$timestamp = strtotime($time_str);
echo $timestamp;

以上程式碼輸出結果為:

1625038200

方法二:DateTime類

PHP的DateTime類別是一個強大的日期時間操作工具,它提供了多種方法將日期時間轉換成時間戳記。以下是其中兩個常用方法的範例:

  1. format和getTimestamp方法

#DateTime類別的format方法可以將日期時間物件格式化成指定的字串,其中常見的格式化參數如下所示:

  • Y:年份,例如:2021
  • m:月份,例如:06
  • d:日份,例如:30
  • H:小時,例如:10
  • i:分鐘,例如:30
  • s:秒數,例如:00

DateTime類別的getTimestamp方法可以將日期時間物件轉換成時間戳記。將上述兩個方法結合使用,可以將日期時間物件轉換成時間戳記。以下是範例程式碼:

<?php
$date_str = "2021-06-30 10:30:00";
$date_obj = new DateTime($date_str);
$timestamp = $date_obj->getTimestamp();
echo $timestamp;

以上程式碼輸出結果為:

1625038200
  1. setTime方法和format方法

DateTime類別的setTime方法可以將日期時間對象設定為指定的時間點。將該方法和format方法結合使用,可以將日期時間物件轉換成時間戳。以下是範例程式碼:

<?php
$date_obj = new DateTime();
$date_obj->setTime(10, 30, 0);
$timestamp = $date_obj->format('U');
echo $timestamp;

以上程式碼輸出結果為:

1625038200

方法三:date函數

PHP的date函數可以將時間戳格式化為指定的日期時間字串。此函數的語法如下:

date(string $format [, int $timestamp = time() ])

其中,$format參數是需要轉換成的日期時間格式字串,$timestamp參數是可選的時間戳,預設為目前時間。此函數傳回值為格式化後的日期時間字串。

將該函數和時間戳記結合使用,可以將時間戳記轉換為日期時間字串。例如,將時間戳記1625038200轉換成日期時間字串:

<?php
$timestamp = 1625038200;
$date_str = date('Y-m-d H:i:s', $timestamp);
echo $date_str;

以上程式碼輸出結果為:

2021-06-30 10:30:00

總結

本文介紹了PHP將日期時間轉換成時間戳記的三種方法:strtotime函數、DateTime類別和date函數。開發者可以根據具體需求選擇適合的方法進行轉換。

以上是聊聊php將時間轉時間戳記的多種方式的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn