(PECL paradox >= 1.4.0)
px_timestamp2string — タイムスタンプを文字列に変換する
$pxdoc
, float $value
, string $format
)paradox ファイルに保存されているタイムスタンプを、 人間が理解しやすい形式に変換します。 paradox のタイムスタンプは、0000 年 1 月 1 日からの経過ミリ秒数で保存されています。 この関数は利便性を高めるためだけのもので、 以下の例のように数学関数やカレンダー関数で同等のことを実現できます。
成功した場合に TRUE
を、失敗した場合に FALSE
を返します。
例1 paradox のタイムスタンプを人間が理解しやすい形式に変換する
<?php
$px = px_new();
/* paradox db 形式の日付データを再現します。*/
/* 0000 年 1 月 1 日から 700000 日後です。*/
$days = 700000;
/* カレンダー関数を使用して、人間が理解しやすい形式で */
/* 日付を表示します。 */
echo jdtogregorian($days+1721425)."\n";
/* paradox データベースのタイムスタンプに変換します。 */
/* タイムスタンプは 0000 年 1 月 1 日からの経過ミリ秒数です。*/
$stamp = $days * 86400.0 * 1000.0;
/* 一時間足します */
$stamp += 3600000.0;
/* これは '7/15/1917 01:00:00' を出力します。*/
echo px_timestamp2string($px, $stamp, "n/d/Y H:i:s")."\n";
px_delete($px);
?>
上の例の出力は以下となります。
7/15/1917 7/15/1917 01:00:00
jdtogregorian() に渡すユリウス日は、 紀元前 4714 年 1 月 1 日を基準としており、paradox ファイルで使用している値に変換するには 1721425 日ぶん加算しなければなりません。 日数をタイムスタンプに変換するのは簡単で、 日数に 86400000.0 を掛ければミリ秒数になります。