PHPを使用して、UNIXのタイムスタンプを次のような日付文字列に変換します。2008-07-17T09:24:17Z
1333699439
のようなタイムスタンプを2008-07-17T09:24:17Z
に変換するにはどうすればいいですか?
gmdate
を試してみてください。
<?php
$timestamp=1333699439;
echo gmdate("Y-m-d\TH:i:s\Z", $timestamp);
?>
日付関数date ( string $format [, int $timestamp = time() ] )
を使う
ISO 8601日付に変換するためのフォーマットとしてdate('c',time())
を使用します(PHP 5に追加) - 2012-04-06T12:45:47+05:30
2012-04-06T13:33:59Z
を取得するにはdate("Y-m-d\TH:i:s\Z",1333699439)
を使用してください
これが日付関数がサポートするフォーマットのいくつかです。
<?php
$today = date("F j, Y, g:i a"); // March 10, 2001, 5:16 pm
$today = date("m.d.y"); // 03.10.01
$today = date("j, n, Y"); // 10, 3, 2001
$today = date("Ymd"); // 20010310
$today = date('h-i-s, j-m-y, it is w Day'); // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.'); // it is the 10th day.
$today = date("D M j G:i:s T Y"); // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h'); // 17:03:18 m is month
$today = date("H:i:s"); // 17:16:18
?>
PHP5.3を使用していると仮定すると、日付を処理する現代的な方法はネイティブ DateTimeクラス を使用することです。現在時刻を取得するには、電話をかけるだけです。
$currentTime = new DateTime();
特定のタイムスタンプからDateTimeオブジェクトを作成する(つまり、現在ではない)
$currentTime = DateTime::createFromFormat( 'U', $timestamp );
フォーマットされた文字列を取得するには、次に呼び出すことができます
$formattedString = $currentTime->format( 'c' );
こちらの マニュアルページを参照してください
正しい結果が得られるようにデフォルトのタイムゾーンを設定することは非常に重要です。
<?php
// set default timezone
date_default_timezone_set('Europe/Berlin');
// timestamp
$timestamp = 1307595105;
// output
echo date('d M Y H:i:s Z',$timestamp);
echo date('c',$timestamp);
?>
オンライン変換のヘルプ: http://freeonlinetools24.com/timestamp
<?php
$timestamp=1486830234542;
echo date('Y-m-d H:i:s', $timestamp/1000);
?>
$unixtime_to_date = date('jS F Y h:i:s A (T)', $unixtime);
これはうまくいくはずです。
私はこの会話の中の情報がとても有用であると思ったので、私は自分のMySQLデータベースからのタイムスタンプとちょっとしたPHPを使ってそれを理解する方法を追加したいと思いました
<?= date("Y-m-d\TH:i:s\+01:00",strtotime($column['loggedin'])) ?>
出力は次のとおりです。2017-03-03T08:22:36 + 01:00
どうもありがとうございましたあなたが答えるSteweは私にとってeurekaでした。