Gå til innhold

Konvertere 2005-03-10 til 10. mars 2005


Anbefalte innlegg

Videoannonse
Annonse

her er en unix_time lønnsomt som vi kan lage utifra datoen din med mktime()

 

vi lar kode tale for seg selv:

(les comment lines)

 

<?php
$dato = '2005-03-10';
$year = substr($dato, 0, 4); //hent de fire første siffer
$month = substr($data, 5,2); //hent ut de 2 neste siffer
$day = substr($data, 8, 2); //hent ut de to siste siffer

$timestamp = mktime(0,0,0, $month, $day, $year);

setlocale(LC_TIME, 'nor'); //sett språk og tidsregning til norsk (så vi får januar på norsk)
$formated_date = ucwords(strftime("%A %d %B %Y", $timestamp));
//formated_date er nå en string som ser omtrent salik ut: 'Fredag 10 Mars 2006' (ja, på norsk)

//vi kan nå også bruke timestamp til å telle dager:
$time_limit = (((60 * 60) * 24) * 10); //10 dager

if($timestamp + $time_limit > time()){
 //mindre enn ti dager siden	
}

 if($timestamp + $time_limit < time()){
 //mere enn ti dager siden	
}
?>

Lenke til kommentar

evt kan datoen hentes slik:

$time = strtotime('2005-03-10');
$date = date('d. F Y', $time);

 

edit: for øvrig:

$pattern = 'd. F Y';
$time = strtotime('2005-05-10');
$date = date($pattern, $time);
$period ='10 days';
$date_last  = date($pattern, strtotime('-'.$period, $time));

ser forresten nå at jeg ikke leste spørsmålet ditt riktig.. :p

men det er ikke så veldig mye omskriving som skal til uansett.

jeg må gå og ete nå, så lykke til!

 

edit: noe sånt:

$date     = '2005-03-10';
$pattern  = 'd. F Y';
$period   = '-10 days';
$time     = strtotime($date);
$time_now = strtotime("$period", time());
$date     = date($pattern, $time);

if ($time<$time_now) {
#gjør dette
}
else {
#gjør noe annet
}

litt dårlig tid nå da. se heller på NH sitt innlegg, det er bedre.. :)

lykke til!

 

edit: og så glemte jeg setlocale()-tingen..

Endret av loketing
Lenke til kommentar

date() lar seg ikke konfigurere med setlocale(), så den vil ikke returnere norske navn på dager/måneder :S

 

Om du ser på strftime() i manualen ser du alle mulighetene i formatet du kan ha, som er MANGE :D

 

(string-from-time :p )

Lenke til kommentar
her er en unix_time lønnsomt som vi kan lage utifra datoen din med mktime()

 

vi lar kode tale for seg selv:

(les comment lines)

 

<?php
$dato = '2005-03-10';
$year = substr($dato, 0, 4); //hent de fire første siffer
$month = substr($data, 5,2); //hent ut de 2 neste siffer
$day = substr($data, 8, 2); //hent ut de to siste siffer

$timestamp = mktime(0,0,0, $month, $day, $year);

setlocale(LC_TIME, 'nor'); //sett språk og tidsregning til norsk (så vi får januar på norsk)
$formated_date = ucwords(strftime("%A %d %B %Y", $timestamp));
//formated_date er nå en string som ser omtrent salik ut: 'Fredag 10 Mars 2006' (ja, på norsk)

//vi kan nå også bruke timestamp til å telle dager:
$time_limit = (((60 * 60) * 24) * 10); //10 dager

if($timestamp + $time_limit > time()){
 //mindre enn ti dager siden	
}

 if($timestamp + $time_limit < time()){
 //mere enn ti dager siden	
}
?>

5733062[/snapback]

 

Jeg så bare starten av scriptet ditt men du kan bytte ut:

 

$year = substr($dato, 0, 4); //hent de fire første siffer

$month = substr($data, 5,2); //hent ut de 2 neste siffer

$day = substr($data, 8, 2); //hent ut de to siste siffer

 

med:

 

list($year, $month, $day) = explode('-','2005-03-10');

Endret av Zic0
Lenke til kommentar

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...