2012-05-08 6 views
6

Ich kenne das Jahr und den Tag des Jahres (0-365). Gibt es eine Möglichkeit, um von Zeitstempel zurück zu bekommen?Get Zeitstempel von Datum ('Z') und Jahr

Etwas wie:

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

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

Antwort

4

Versuchen Sie Folgendes:

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

Es wird ein Zeitstempel mit einer Zeit von 0:00:00 erzeugt. (Ich bin nicht sicher, ob es aber richtig in Bezug auf die Sommerzeit verhalten ...)

Überprüfen Sie die PHP-Handbuch für weitere Details: PHP: mktime - Manual

+0

Danke, das hilft mir viel Zeit zu sparen! Als richtige Antwort markiert. – Narek

1

Versuchen createFromFormat mit:

$date = DateTime::createFromFormat('z Y', $day . ' ' . $year); 
echo $date->getTimestamp(); 
+0

ich Angst LIITLE Klassen wie diese zu verwenden, da in einigen Servern Sie haben nicht funktioniert, aber in Zukunft wird dies die beste Lösung sein, denke ich. Vielen Dank! – Narek

2

Vielleicht handlich strtotime bekommt hier: php -r 'echo @date("Y-m-d H:s", strtotime("january 2012 +200 day")).PHP_EOL;' In Ihrem Beispiel $timestamp = strtotime("january $year +$day day");

+0

Dachte nicht, dass das funktioniert. Vielen Dank! – Narek