6

私は年と日 (0-365) を知っています。それからタイムスタンプに戻る方法はありますか?

何かのようなもの:

$day=date('z');
$year=2012;

$timestamp=strtotime($day.'-nd day of '.$year);
4

3 に答える 3

5

次のことを試してください。

$timestamp = mktime(0,0,0,1,$day,$year);

時刻が0:00:00に設定されているタイムスタンプが生成されます。(夏時間に関して正しく動作するかどうかはわかりませんが...)

詳細については、PHPのマニュアルを確認してください。PHP:mktime-マニュアル

于 2012-05-08T14:07:18.090 に答える
2

多分 strtotime はここで便利です: php -r 'echo @date("Y-m-d H:s", strtotime("january 2012 +200 day")).PHP_EOL;' あなたの例では$timestamp = strtotime("january $year +$day day");

于 2012-05-08T14:06:06.360 に答える
1

createFromFormatを使用してみてください:

$date = DateTime::createFromFormat('z Y', $day . ' ' . $year);
echo $date->getTimestamp();
于 2012-05-08T14:05:26.953 に答える