Avatar billede xited Praktikant
22. januar 2006 - 17:04 Der er 3 kommentarer og
1 løsning

Hvordan får jeg mktime til at æde 'DD-MM-YY HH-II'

Hejsa,

Jeg har lavet dette:

$datesplit = explode(" ", $DATOINPUT); # Fanger datoen, og deler den i 2 - $datesplit[0] bliver datoen - $datesplit[1] bliver tidspunktet.
$datesplit_date = explode("-", $datesplit[0]); # Deler datoen op i, 0: dag, 1: Måned, 2: År.
$datesplit_time = explode(":", $datesplit[1]); # Deler tidspunktet op i, 0: Timer, 1: Minutter.
if(!$datesplit_date[2]){$datesplit_date[2] = "$index_aar";} # Hvis intet år er indtastet, regnes det for det igangværende år.
$date = mktime($datesplit_time[0], $datesplit_time[1], 0, $datesplit_date[1], $datesplit_date[0], $datesplit_date[2]);

Den kan ændre datoer skrevet på denne måde:

24-12-2006 23:59

...til et tal i sekunder fra 1970

Desuden vil dette være det samme:

24-12 23:59 (Skal kunne læse dette!)

Mit spørgsmål er, om det ikke kan gøres lettere...
Avatar billede erikjacobsen Ekspert
22. januar 2006 - 18:37 #1
En anelse kluntet, men er det her mere i den retning du vil (jeg tager lige forbehold for om jeg kan tælle rigtigt...):


  function splitdato($dato) {
    if (preg_match('/^(\d+)-(\d+)(-(\d+))? (\d+):(\d+)/',$dato,$r)) {
      if ($r[4]=='') { $r[4]=date('Y'); }
      return mktime($r[5],$r[6],0,$r[2],$r[1],$r[4]);
    } else {
      return -1;
    }
  }


print splitdato("24-12-2006 23:59")."\n";

print splitdato("24-12 23:59")."\n";
Avatar billede xited Praktikant
23. januar 2006 - 19:03 #2
Tak for hjælpen! Point?
Avatar billede erikjacobsen Ekspert
23. januar 2006 - 19:48 #3
Nej tak, jeg samler ikke på den slags.

Kluntet sagde jeg. Fx vil \d+ matche 1 til flere tal, men der kan kun stå 1 (måske) eller 2 eller 4.
Vi kan godt gøre den mere præcis, men det afhænger lidt af hvad sammenhæng, den skal bruges i. Desuden har jeg lavet så der kan stå noget efter, fx en sekundangivelse, der så ignoreres.
Avatar billede xited Praktikant
24. januar 2006 - 15:40 #4
Jamen jeg siger mange gange tak for hjælpen!
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester