![dontknow](https://www.php-resource.de/forum/core/images/smilies/fragend013.gif)
php - Tagesfunktion
Einklappen
X
-
Original geschrieben von mrhappiness
wart ab, bis du die rechnung siehst
keine ahnung, strtotime steht nämlich genau wie date und mktime bei den Datums- und Zeitfunktionen...ja *g*
Einen Kommentar schreiben:
-
Original geschrieben von nordpol
DANKE!!!Warum kenne ich solche Funktionen nichtich glaube ich mache alles viel zu umständlich...
Einen Kommentar schreiben:
-
DANKE!!!
genau das habe ich gesucht! Warum kenne ich solche Funktionen nicht - ich glaube ich mache alles viel zu umständlich...
Gruß
Einen Kommentar schreiben:
-
PHP-Code:function get_mondays()
{
$result[]=strtotime('monday');
$result[]=strtotime('next monday', $result[0]);
$result[]=strtotime('next monday', $result[1]);
return $result;
}
Einen Kommentar schreiben:
-
PHP-Code:function firstkw($jahr)
{
$erster = mktime(0, 0, 0, 1, 1, $jahr);
$wtag = date('w', $erster);
if ($wtag <= 4) {
/**
* * * Donnerstag oder kleiner: auf den Montag zurückrechnen.
*/
$montag = mktime(0, 0, 0, 1, 1 - ($wtag-1), $jahr);
} else {
/**
* * * auf den Montag nach vorne rechnen.
*/
$montag = mktime(0, 0, 0, 1, 1 + (7 - $wtag + 1), $jahr);
}
return $montag;
}
function mondaykw($kw, $jahr)
{
$firstmonday = firstkw($jahr);
$mon_monat = date('m', $firstmonday);
$mon_jahr = date('Y', $firstmonday);
$mon_tage = date('d', $firstmonday);
$tage = ($kw-1) * 7;
$mondaykw = mktime(0, 0, 0, $mon_monat, $mon_tage + $tage, $mon_jahr);
return $mondaykw;
}
Einen Kommentar schreiben:
-
php - Tagesfunktion
Hi!
Ich finde einfach keine Lösung für mein Problem. Ich habe eine Aufgabe zu lösen die so aussieht:
Ich erstelle für unser Intranet gerade eine Seite. Auf diesen Seiten soll jeden Montag so eine art Newsletter erscheinen. Um das ganze erstellen zu können habe ich eine Adminseite erstellt. Alle Daten werden in eine Datenbank geschrieben. Damit ich das ganze richtig zuordnen und verarbeiten kann will ich die einzelnen Beiträge anhand des Datums zusammenführen. Sprich jeder Artikel eines newsletters wird in diesem Newsletter durch das Datum zugeordnet.
Die Autoren der Artikel sollen die Möglichkeit bekommen die Artikel 3 Wochen im voraus erstellen zu können.
Um diese Ausahl zu erstellen habe ich nachfolgende Funktion erstellt:
PHP-Code:function datum_neu() {
$daynumber = date("w"); //Ermitteln der Nummer des Tages
if($daynumber == 1) { //für den Fall, dass heute Montag ist
$dif = 0;
} elseif($daynumber == 0) { // oder wenn Sonntag ist
$dif = 1*24*60*60;
} else {
$dif = (8 - $daynumber)*24*60*60; //für alle anderen Tage
}
$n_mon = time() + $dif; //ermitteln des nächsten Montag (wenn dieser heute ist dann heute)
$woche = 7*24*60*60; //anzahl Sekunden pro Woche
$mon_1 = $n_mon + $woche; //Montag eins nach dem ersten Montag
$mon_2 = $mon_1 + $woche; //Montag zwei nach dem ersten Montag
//Umwandeln des timestamps in einen Tages-timestamp
//Funktion: ermitteln des Timestamp der Montage -> Umwandeln in ein Datum
// -> zurückwandeln in einen Timestamp
$n_mon_d = date("d", $n_mon);
$n_mon_m = date("m", $n_mon);
$n_mon_Y = date("Y", $n_mon);
$n_mon_stamp = mktime($n_mon_m, $n_mon_d, $n_mon_Y);
$mon1_d = date("d", $n_mon);
$mon1_m = date("m", $n_mon);
$mon1_Y = date("Y", $n_mon);
$mon1_stamp = mktime($mon1_m, $mon1_d, $mon1_Y);
$mon2_d = date("d", $n_mon);
$mon2_m = date("m", $n_mon);
$mon2_Y = date("Y", $n_mon);
$mon2_stamp = mktime($mon2_m, $mon2_d, $mon2_Y);
echo " <option value=\"".$n_mon_stamp."\">".date("d.m.Y",$n_mon)."</option>\n";
echo " <option value=\"".$mon1_stamp."\">".date("d.m.Y",$mon_1)."</option>\n";
echo " <option value=\"".$mon2_stamp."\">".date("d.m.Y",$mon_2)."</option>\n";
}
Ich hoffe man kann verstehen, auf was ich raus will!
DankeStichworte: -
Einen Kommentar schreiben: