Brauche Hilfe mit mktime()

Acriss

Gesperrt
Guten Morgen :)
Ich habe mir eine Funktion für einen kleinen Teil meines Games geschrieben,
allerdings habe ich Probleme mit der Zeit:
PHP:
$now = getdate(); // Aktuelle Zeit
$bis = explode('/', $Bauzeit); // Zeit+

$sec = $bis[5] * $Stufe + $now['secondes'];
$min = $bis[4] * $Stufe + $now['minutes'];
$std = $bis[3] * $Stufe + $now['hours'];
$day = $bis[2] * $Stufe + $now['mday'];
$mon = $bis[1] * $Stufe + $now['mon'];
$jar = $bis[0] * $Stufe + $now['year'];

$newdate = mktime("Was muss hier hin?", $sec, $min, $std, $mon, $jar);
a) Soll ein gültiges Datum geliefert werden, denn 500sek oder 44h sind ein wenig komisch, da
b) Das Datum im Format YYYY-MM-DD hh:mm:ss (Datetime) stehen muss, weil ich das ganze dann in eine MySQL-Datenbank einfüge.

Ich bin offen für Ideen :)

mfg
 
mktime liefert dir aber nen timestamp. Das ist vermutlich noch viel unschöner für deine Bedürfnisse als 500 Sekunden oder 44 Stunden :)

Du suchst vermutlich date(). Da kannst du dann das Datum mit Hilfe von mktime() und deinen Werten anzeigen lassen.
 
Ein Blick ins PHP-Handbuch sollte dir die Antwort geben: dort wird die Anzahl der Stunden angegeben.

Ich suche immer zuerst dort...
Allerdings ist es nicht immer ausreichen erklärt, weswegen ich hier nocheinmal hilfe suche.
Deine Antwort bringt mich so nicht wirklich weiter.

edit:@Igäl:

Ich habe es jetzt so versucht:
PHP:
$sec = ($bis[5] * $Stufe * $Stufe);
min = ($bis[4] * $Stufe * 10);
$std = ($bis[3] * $Stufe * 5);
$day = ($bis[2] * $Stufe);
$mon = ($bis[1] * $Stufe);
$jar = ($bis[0] * $Stufe);

$newdate = mktime(date("s")+$sec, date("i")+$min, date("H")+$std, date("m")+$mon, date("d")+$day, date("Y")+$jar);

Nur wie formatiere ich das jetzt in das Format Datetime(YYYY-MM-DD hh:mm:ss) ?
Und ist das soweit überhaupt richtig?
 
Zuletzt bearbeitet:
Danke :)
Ich kann es leider nicht testen,
ist es so richtig?
PHP:
$sec = ($bis[5] * $Stufe * $Stufe);
$min = ($bis[4] * $Stufe * 1.5);
$std = ($bis[3] * $Stufe * 1.25);
$day = ($bis[2] * $Stufe);
$mon = ($bis[1] * $Stufe);
$jar = ($bis[0] * $Stufe);

#Datum erstellen

$newdate = date( "[Y-m-d H:I:s]", mktime([date("Y")+$jar, date("m")+$mon, date("d")+$day, date("H")+$std, date("i")+$min, date("s")+$sec]) );
 
Zurück