2012-09-01 75 views
1

我得到日期& UNIX時間戳中的時間。 所以想要將它轉換爲dd/mm-yyyy HH:MM:SS格式的「America/Los_Angeles」時區。如何將UNIX時間戳轉換爲PHP中的PHP

如何在PHP中做到這一點?

e.g: 輸入:1345014000 輸出:15-08-2012 00:00:00

回答

3

date_default_timezone_set該函數可以被用來設置內PHP當前時區。您只需要爲每個文件調用一次,因爲從此之後的所有計算都將使用該時區完成。它接受所有有效的時區名稱,例如您提到的名稱。

另一方面,date函數接受一個字符串,說明格式以及希望轉換的時區。格式化選項的完整列表,可以發現:在您的情況http://php.net/manual/en/function.date.php

使用情況如下:

date_default_timezone_set("America/Los_Angeles"); 
$str=date('d-m-Y H:i:s',$timestamp); //Where $timestamp is the timestamp to be converted 
0

要時間戳轉換爲字符串,可以使用following function

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

,你需要通過following function來設置時區(無論是在在php.ini或腳本級服務器級):

bool date_default_timezone_set (string $timezone_identifier) 

這將被稱爲followes:

date_default_timezone_set ("America/Los_Angeles"); 
$yourDateString = date("d-m-Y H:i:s", $yourTimeStamp); 
0

此代碼對我的作品

DATE("Y-m-d H:i:s",$unix_timestamp); 

讓我的tymestamp從數據庫中,所以實際上我的代碼是:

echo DATE("d/m/Y H:i", $row['lastlogin']); 
0

using DateTime:

<?php 
$input = '1345014000'; 
$oDate = new DateTime('@' . $input, new DateTimeZone('America/Los_Angeles')); 

echo $oDate->format('d-m-Y H:i'); 
?> 

如果您的默認時區設置爲LA,則可以省略DateTime的第二個參數。否則,您可以使用您選擇的時區,並因此爲不同的時區創建多個$ oDates,如果您想這樣做