String als Zeit behandeln?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • String als Zeit behandeln?

    Ich habe eine mysql Spaltem, die vom Typ Date ist, was irrelevant ist, ich kann diesen Typ ändern, wie es am besten passt.

    Nun bekomme ich CSV Dateien, die natürlich nicht kompatibel zum DB Date Typ sind, es geht hier nur Datum, keine Zeit.
    Jetzt habe ich mir schon die PHP Date Funktionen usw angeguckt, aber finde nichts, was mir insofern hilft, als dass ich mein CSV Datum in Form "T.M.YY" nicht gescheit umwandeln kann.
    Daher frag ich mal, ob es einen anderen weg gibt als manuell mit explode den String an den Punkten zu brechen und daraus dann was generieren, (bietet sich hier ein timestamp an, der auch direkt in die DB als solcher gepackt wird?)
    Es gibt ja viele Funktionen, die einen timestamp nehmen und anhand Paramtern einen formatierte Zeit zurück geben, was ich nicht finden konnte ist eine Methode, die einen String nimmt und anhand Eingangsformat, der einem sagt, wie der String als Zeit aussieht und einem Ausgangsvfrmat, der angibt, wie der String formatiert werden soll.
    SQL Injection kitteh is...

  • #2
    Also wenn du ein englisches Zeitformat hättest, dann wäre wohl strtotime() genau das richtige für dich
    Probiers mal ggf damit

    Gruss

    tobi
    Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

    [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
    Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

    Kommentar


    • #3
      Kann ich machen, scheint aber keins zu sein
      SQL Injection kitteh is...

      Kommentar


      • #4
        Also dann etwas Handarbeit
        PHP-Code:
        $datum '12.12.2006';
        $monat explode('.',$datum);
        switch(
        $monat){
            case 
        '1':
            
        $monat[1] = 'January';
            break;
            case 
        '2':
            
        $monat[1] = 'February';
            break;
            [...]
            case 
        '12':
            
        $monat[1] = 'December';
            break;
        }
        $datum implode(' ',$monat);
        $datum strtotime($datum); 
        Gruss

        tobi
        Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

        [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
        Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

        Kommentar


        • #5
          Das gleiche in Kurz:
          PHP-Code:
          $datum '12.12.2006';
          $datum explode('.'$datum);
          $datum mktime(000$datum[1], $datum[0], $datum[2]); 

          Kommentar


          • #6
            Jep, dann halt der Weg der Hand

            Danke

            und nochwas, sollte ioch in mysql nur mit den Timestamps arbeiten? Oder die Spalte auf Date lassen? Ich muss diese sowieso formatiere
            SQL Injection kitteh is...

            Kommentar

            Lädt...
            X