PHP date() of MySQL DATETIME

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Koko

koko

17/07/2007 16:35:00
Quote Anchor link
Hoi,

Ik ben bezig met een nieuw database-design en vroeg me af of een tijd opslaan in de db en achteraf omzetten in YYYY-mm-dd het snelste is als ik de unix-time verwerk met PHP of als ik een MySQL-timestamp in de db zet en daaruithaal? Of is het gewoon eigen voorkeur?
 
PHP hulp

PHP hulp

30/09/2022 22:20:54
 
Joren de Wit

Joren de Wit

17/07/2007 17:04:00
Quote Anchor link
Gebruik geen timestamp, niet in php en niet in mysql. Een datum of tijdstip sla je op als DATE of DATETIME in de database en pas bij het uitlezen maak je deze op.

Zie ook mijn tutorial over de datum- en tijdfuncties in mysql.
 
Koko

koko

17/07/2007 17:05:00
Quote Anchor link
Ok, begrepen.

Maar wat is nu het beste: omzetten in PHP of in de query?
 
M Ypma

M Ypma

17/07/2007 17:47:00
Quote Anchor link
omzetten in de query:) is vele malen sneller dan het laten doen door php, zoek even in de documentatie voor de juiste funties, er is geloof ik ook een tutorial over hier...
 
Koko

koko

17/07/2007 17:48:00
Quote Anchor link
ok, bedankt

Ik sla dan de tijd op in een int-veld, niet?
Gewijzigd op 01/01/1970 01:00:00 door koko
 
Joren de Wit

Joren de Wit

17/07/2007 18:02:00
Quote Anchor link
Nee, gebruik het juiste datatype! Een datum sla je op in een DATE veld, een tijd in een TIME veld en een datum-tijd combinatie in een DATETIME veld.

Lees nu eerst eens de tutorial waarvan ik de link al gaf, volgens mij heb je dat nog niet gedaan. Alles zal je een stuk duidelijker worden.
 
Koko

koko

17/07/2007 18:04:00
Quote Anchor link
Heb ik wel gelezen, ma een tut is een mening van iemand, terwijl er op andere plaatsen rechtstreeks t tegenovergestelde staat. Maar k ga het doen zoals het daar staat.

Bedankt
 
Joren de Wit

Joren de Wit

17/07/2007 18:11:00
Quote Anchor link
Dan ben ik wel benieuwd waar je het tegenovergestelde tegenkomt. Dat zou dus betekenen dat je daar aangeraden wordt om niet het juiste datatype voor je gegevens te gebruiken?

Geloof me, dat is wel het minst slimme dat je kunt doen. En natuurlijk kun je blijven werken met timestamps, maar waarom moeilijk doen als het makkelijk kan?
 
Koko

koko

17/07/2007 18:12:00
Quote Anchor link
Nee, ik heb het dan over de php date() te gebruiken ;-)
 
Joren de Wit

Joren de Wit

17/07/2007 18:18:00
Quote Anchor link
Oh oke, maar goed dat zou ik je ook afraden. De datum- en tijdfuncties van mysql zijn namelijk veel uitgebreider dan de mogelijkheden die je in php hebt.

Een aantal voordelen heb ik ook aangegeven in die tutorial. Verder is de date() functie niets meer dan een functie om een bepaald tijdstip in een bepaald formaat te zetten. Voor het rekenen met data en tijd gebruik je altijd nog timestamps en helaas zit daar in php een minimale en maximale waarde aan.
 
Jan Koehoorn

Jan Koehoorn

17/07/2007 18:36:00
Quote Anchor link
Die zit er ook aan in MyQL, alleen zijn daar de marges "iets" ruimer ;-)
Een DATE veld mag van '1000-01-01' tot '9999-12-31' lopen, terwijl een timestamp van 1 januari 1970 tot ergens in 2032 loopt.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.