Computerhilfen.de Logo
Forum
Tipps
News
Frage stellen

umrechnen zu timestamp

Nabend,

ich wollt mal fragen wie ich einen MySQL Datenbanksdatumswert, wie zB "2006-12-03 21:18:17" in einen timestamp umrechnen kann, um dann die Zeitspanne (Tage, Stunden, Minuten, Sekunden) zum jetztigen Zeitpunkt ausgeben zu können.

Danke schonmal.


Antworten zu umrechnen zu timestamp:

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Das ist recht einfach:

Den Timestamp bekommst du in dem Fall mit strtotime('2006-12-03 21:18:17');

Aber es geht noch einfacher:

- den Timestamp kann dir auch MySQL zurückgeben: UNIX_TIMESTAMP(dein_datetime_feld)

- und die gewünschte Zeitspanne zum jetzigen Zeitpunkt kann MySQL auch für dich berechnen (einfach mal in die Dokumentation gucken ;))

greez 8)
JoSsiF

thx, eine frage grad noch im zusammenhang. und zwar, mit welchen funktionen kann ich den timestamp wieder in eine formatierung umwandeln?

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

date()

also mag ja sein, dass ich ein bisschen blöd daherfrage, aber ich check das nicht ::)
ich möchte ganz konkret eine zeitspanne zwischen zwei timestamps ausrechnen, und die differenz dann so formatieren, wieviele jahre, monate, wochen, tage, stunden, minuten und sekunden dazwischen liegen. Wenn ich das mit date() oder getdate() mache, kommt dann sowas raus "Das Forum ist seit 1970 Jahren, 1 Monaten, 7 Tagen, 22 Stunden, 57 Minuten und 36 Sekunden online." Kann mir vielleicht jemand genau sagen, evtl nen code posten, wie ich das machen kann?

Hier ist meiner:

function average_messages()
{

$sql = "SELECT UNIX_TIMESTAMP(setting_installed) as timestamp FROM settings";
$result = mysql_query($sql) OR die(mysql_error());
$datetime_installed = mysql_fetch_assoc($result);
$datetime_installed = $datetime_installed['timestamp'];

$datetime_now = getdate();
$datetime_now = $datetime_now['0'];


$difference = $datetime_now-$datetime_installed;
$getdate = getdate($difference);
$getdate = $getdate['year']." Jahren, ".$getdate['mon']." Monaten, ".$getdate['mday']." Tagen, ".$getdate['hours']." Stunden, ".$getdate['minutes']." Minuten und ".$getdate['seconds']." Sekunden";

$print_difference = "Das Forum ist seit ".$getdate." online.";

return $print_difference;

Der Tabllenwert ist übrigens "2006-11-27 22:54:10".
Vielen Dank schonmal, ich weiß, ich bin ein hoffnungsloser fall  ():-)

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Habs nur mal 1 Minute überflogen...

Das sieht alles unheimlich kompliziert und wirr aus. Den aktuellen Timestamp bekommst du doch ganz einfach mit time(). Von dem subtrahierst du deinen Wert aus der DB und formatierst den mit date().

Beispiel (nicht getestet):

<?php
$dbvalue
// Timestamp aus DB; vorher schon geholt

$now time();

$gap $now $dbvalue;

echo 
date("d.m.Y H:i:s"$gap);
?>


greez 8)
JoSsiF

"Das Forum ist seit 08.01.1970 08:41:27 online."
kommt das selbe raus wie bei meinem versuch..

Hat dir diese Antwort geholfen?

Danke ButtonHilfreiche Antwort Button

Ähm, ja. Richtig. Der Zeitstempel ist ja immer relativ zum Beginn der Unix-Epoche.  :-[

Dann müssen wir die Zeitdifferenz wie es aussieht doch manuell zerlegen, dazu vielleicht diese Funktion:

<?php

function getDiffComponents($gap)
{
  
$components = array();

  
$components[&#39;week&#39;] = floor($gap / (3600*24*7));
  
$components[&#39;day&#39;] = floor($gap / (3600*24) % 7);
  
$components[&#39;hour&#39;] = floor($gap / 3600 % 24);
  
$components[&#39;min&#39;] = floor($gap / 60 % 60);
  
$components[&#39;sec&#39;] = floor($gap % 60); 

  
return $components;
}

?>


Das sollte aber nun funzen ;)

greez 8)
JoSsiF

« PSP Demos als internen DownloadGamer Template für Forum »
 

Schnelle Hilfe: Hier nach ähnlichen Fragen und passenden Tipps suchen!

Fremdwörter? Erklärungen im Lexikon!
Dateiendungen
Die Dateiendung, auch Dateinamenerweiterung, Dateierweiterung oder einfach "Endung" genannt, besteht aus meistens drei oder vier Buchstaben und wird mit einem Punkt an de...

Dateisystem
Das Dateisystem eines Computers definiert, wie Daten auf einem Speichermedium organisiert werden. Es bestimmt dabei, wie die Informationen auf dem Medium gespeichert, gel...

Datenbank
Eine Datenbank (DBS), im englischen database, ist eine strukturierte Datensammlung und fungiert wie ein "digitales Archiv". Datenbanken dienen der effizienten Aufbewahrun...