Datum auseinanderschneiden

Fragen zu allen Themen rund ums Programmieren außerhalb von phpBB können hier gestellt werden - auch zu anderen Programmiersprachen oder Software wie Webservern und Editoren.
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Du solltest vielleicht noch überlegen, dass man mit der letzten Lösung bis zu 19 Monate angeben konnte...
In dieser Hinsicht ist dir mit checkdate() geholfen (wenn du den Link anklickst, siehst du die nötigen Parameter...
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

Das zusammen mit einem explode() sollte die beste und kürzeste Lösung ergeben...

Code: Alles auswählen

$datum = explode('.', $datum);

if (count($datum) != 3)
{
  // ungültig
}

$tag = intval($datum[0]);
$monat = intval($datum[1]);
$jahr = intval($datum[2]);
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Beitrag von Boecki91 »

@bairan
Hast du dir meinen Code angeschaut?

Ich erwarte zumindest eine Rückmeldung, zu Dingen die du gut findest/ besser machen würdest oder du einfach Fragen hast.

@BB-BF-BM

ich hatte für checkdate mal was eigenes programmiert, bis ich anhand der Fehlermeldung merkte das es das schon gibt :wink: Die Funktion checkdate() verwende ich übrigends auch in dem verlinktem Code... (Den ich an deiner Stelle ehrlich gesagt auch nicht gelesen hätte :D )
Im meinem Script wird bei checkdate Misserfolg allerdings auch noch eine/mehrere Fehlermeldungen ausgeben :wink:
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
BB-BF-BM
Mitglied
Beiträge: 2179
Registriert: 28.10.2005 16:38
Wohnort: Essen

Beitrag von BB-BF-BM »

Hallo!

@Boecki: Mein Kommentar war auch nicht an dich, sondern an bairan (und dessen Code, den er hier gepostet hatte) gerichtet.

@S2B: Ich wäre an deiner hier erwähnten Funktion interessiert und würde mich dazu über eine PM o.ä. freuen.

EDIT: Zu Boeckis Code:

Code: Alles auswählen

    if($timestamp = checkdate($month, $day, $year))
    {
        $time = mktime(0,0,0, $month,$day,$year);
        echo 'UNIX-Timestamp:(Sekunden seid dem 1.1.1970): ' . $time;
        echo "\n<br/>";
        echo '<br />Dein Zahlencode: ' . date('ymd', $time);
    }
die Variable(nbezeichnung) $timestamp ist etwas verwirrend - zumal auch überflüssig -, da sie gemäß der Funktion boolean ist...

Code: Alles auswählen

if(preg_match('#(\d{1,2})\.(\d{1,2})\.(\d{2,4})#',$eingabe,$result))
Mit diesem Suchmuster dürfen auch Buchstaben vor und hinter dem Datum stehen, z.B. "asdf14.02.2009qwert". Ist dies nicht gewünscht, solltest du mit ^ und $ arbeiten. Ein regulärer Ausdruck sollte eigentlich vermieden werden, wenn er - wie oben von S2B bereits zusammengefasst wurde - durch explode() und intval() ersetzt werden kann.
Boecki91
Ehemaliges Teammitglied
Beiträge: 4744
Registriert: 18.06.2006 15:21

Beitrag von Boecki91 »

Ich will aber Buchstaben :D

Mein Code ist keines falls das non Plus Ultra, soll halt zeigen wie man es machen kann

PS:
Den Regex habe ich tatsächlich für Daten (pl v. Datum) im Text benutzt
Standart: Am besten mit beiden Beinen auf dem Boden
Standardmäßig antworte ich nicht auf PMs
bairan
Mitglied
Beiträge: 31
Registriert: 17.05.2006 18:13
Wohnort: Seengen
Kontaktdaten:

Beitrag von bairan »

Boecki91 hat geschrieben:@bairan
Hast du dir meinen Code angeschaut?

Ich erwarte zumindest eine Rückmeldung, zu Dingen die du gut findest/ besser machen würdest oder du einfach Fragen hast.

@BB-BF-BM

ich hatte für checkdate mal was eigenes programmiert, bis ich anhand der Fehlermeldung merkte das es das schon gibt :wink: Die Funktion checkdate() verwende ich übrigends auch in dem verlinktem Code... (Den ich an deiner Stelle ehrlich gesagt auch nicht gelesen hätte :D )
Im meinem Script wird bei checkdate Misserfolg allerdings auch noch eine/mehrere Fehlermeldungen ausgeben :wink:
Ich habe doch eine Antwort geschrieben zu deinem Code, oder nicht? Dann nochmal, leider blicke ich bei so viel Code noch nicht ganz druch :D doch, ich versuche jeden Tag wieder etwas mehr dazuzulernen.

Ich habe vorallem schwieigkeiten mit den verschiedenen Funktionen wie timestamp oder ähndliches, das muss ich mir zuerst mal anschauen und selber etwas rumprobieren bis ich das wohl ganz verstehe.
Benutzeravatar
S2B
Ehemaliges Teammitglied
Beiträge: 3258
Registriert: 10.08.2004 22:48
Wohnort: Aachen
Kontaktdaten:

Beitrag von S2B »

BB-BF-BM hat geschrieben:@S2B: Ich wäre an deiner hier erwähnten Funktion interessiert und würde mich dazu über eine PM o.ä. freuen.
nicht meine... :wink:
Gruß, S2B
Keinen Support per ICQ/PM!
Hier kann man meine PHP-Skripte und meine MODs für phpBB runterladen.
Antworten

Zurück zu „Coding & Technik“