/ Forside / Teknologi / Udvikling / PHP / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
PHP
#NavnPoint
rfh 3959
natmaden 3372
poul_from 3310
funbreak 2700
stone47 2230
Jin2k 1960
Angband 1743
Bjerner 1249
refi 1185
10  Interkril.. 1146
Datetime
Fra : Rigor Mortis


Dato : 28-05-04 21:18

Jeg har et felt i en database der er datatype 'datetime'.

Når jeg henter den ud i variabel, får jeg et output der for eksempel kan
være: "2004-05-25 07:56:59".

Hvordan får jeg det lavet til pæn formattering?

Jeg har prøvet med noget i stil med

date("j/n-Y", $uploadtid)

sopm har virket i en anden forbindelse, men det holder slet ikke nu.
--
RM



 
 
Kasper Garnæs (28-05-2004)
Kommentar
Fra : Kasper Garnæs


Dato : 28-05-04 23:05

Rigor Mortis <rigor@12mail.dk> wrote:
> Jeg har et felt i en database der er datatype 'datetime'.
>
> Når jeg henter den ud i variabel, får jeg et output der for eksempel
> kan være: "2004-05-25 07:56:59".
>
> Hvordan får jeg det lavet til pæn formattering?

Hvis du vil benytte PHP til at lave formateringen, har du brug for at få
tidspunktet som et unix timestamp - altså sekunder siden 1. januar 1970
00:00:00 GMT . Det letteste i det tilfælde at konvertere din mysql DATETIME
type til et unix timestamp i dit SQL statement ved hjælp af
UNIX_TIMESTAMP-funktionen:
http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html.

Så kommer din SQL til at se nogenlunde sådan ud:

SELECT ..., UNIX_TIMESTAMP(uploadtid) as uploadtid FROM ...

Du kan herefter bruge PHP's date- eller strftime-funktion til at formatere
dit unix timestamp, som du gjorde før.

Hvis du vil lave konverteringen i ren PHP, er der en del kreative forslag i
manualens noter: http://dk2.php.net/date+time

--
Med venlig hilsen / Regards
Kasper Garnæs
http://kasper.garnaes.dk



Peter Brodersen (29-05-2004)
Kommentar
Fra : Peter Brodersen


Dato : 29-05-04 07:51

On Sat, 29 May 2004 00:05:07 +0200, "Kasper Garnæs" <demos@mailme.dk>
wrote:

>Hvis du vil lave konverteringen i ren PHP, er der en del kreative forslag i
>manualens noter: http://dk2.php.net/date+time

Yep - strtotime() kan efterhånden også æde MySQLs datetime-format, så:

$datetime = "2002-02-13 12:34:56";
print date("j/n Y",strtotime($datetime));

... vil fx også virke.

--
- Peter Brodersen

Ole Olsen (01-06-2004)
Kommentar
Fra : Ole Olsen


Dato : 01-06-04 05:26

On Sat, 29 May 2004 08:50:41 +0200, Peter Brodersen <usenet@ter.dk>
wrote:

>On Sat, 29 May 2004 00:05:07 +0200, "Kasper Garnæs" <demos@mailme.dk>
>wrote:
>
>>Hvis du vil lave konverteringen i ren PHP, er der en del kreative forslag i
>>manualens noter: http://dk2.php.net/date+time
>
>Yep - strtotime() kan efterhånden også æde MySQLs datetime-format, så:
>
>$datetime = "2002-02-13 12:34:56";
>print date("j/n Y",strtotime($datetime));

Den har ledt efter længe, og det virker sådan set også fint. Jeg har
dog ét problem: print date("d-m-Y",strtotime("0000-00-00")); udskriver
30-11-1999. Hvorfor mon? Jeg vil gerne beholde alle nullerne. Nogen
løsning?

OO


Johan Holst Nielsen (29-05-2004)
Kommentar
Fra : Johan Holst Nielsen


Dato : 29-05-04 08:44

Kasper Garnæs wrote:

> Rigor Mortis <rigor@12mail.dk> wrote:
>
>>Jeg har et felt i en database der er datatype 'datetime'.
>>
>>Når jeg henter den ud i variabel, får jeg et output der for eksempel
>>kan være: "2004-05-25 07:56:59".
>>
>>Hvordan får jeg det lavet til pæn formattering?
>
>
> Hvis du vil benytte PHP til at lave formateringen, har du brug for at få
> tidspunktet som et unix timestamp - altså sekunder siden 1. januar 1970
> 00:00:00 GMT . Det letteste i det tilfælde at konvertere din mysql DATETIME
> type til et unix timestamp i dit SQL statement ved hjælp af
> UNIX_TIMESTAMP-funktionen:
> http://dev.mysql.com/doc/mysql/en/Date_and_time_functions.html.
>
> Så kommer din SQL til at se nogenlunde sådan ud:
>
> SELECT ..., UNIX_TIMESTAMP(uploadtid) as uploadtid FROM ...
>
> Du kan herefter bruge PHP's date- eller strftime-funktion til at formatere
> dit unix timestamp, som du gjorde før.
>
> Hvis du vil lave konverteringen i ren PHP, er der en del kreative forslag i
> manualens noter: http://dk2.php.net/date+time
>


Hvor hulen vil du bruge php's date og time funktioner - når du alligevel
er i MySQL?

SELECT ..., DATE_FORMAT(uploadtid, "%e/%c-%Y") as uploadtid FROM ...

%e/%c-%Y = php's j/n-Y


mvh
Johan

Rigor Mortis (29-05-2004)
Kommentar
Fra : Rigor Mortis


Dato : 29-05-04 21:08

"Johan Holst Nielsen" <__spam__@phpgeek.dk> skrev i en meddelelse
news:c99evi$12al$1@news.cybercity.dk...

>
>
> SELECT ..., DATE_FORMAT(uploadtid, "%e/%c-%Y") as uploadtid FROM ...
>
> %e/%c-%Y = php's j/n-Y
>
>

Kan man få den til at skrive danske ugedage som man kan med PHP?
--
Rigor



Søg
Reklame
Statistik
Spørgsmål : 177560
Tips : 31968
Nyheder : 719565
Indlæg : 6408943
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste