PDA

Bekijk Volledige Versie : [php] verschil tussen datums



GeertS
19/06/04, 15:05
Ik wil in php 2 datums van elkaar aftrekken, nl. om het verschil in
dagen te tonen tussen vandaag en een datum in de toekomst.

ik heb volgende code gebruikt:
<?php
$datum = "2004-06-20";
$verschil_stamp = strtotime($datum) -
mktime(0,0,0,date("m"),date("d"),date("Y"));
$verschil = date("d",$verschil_stamp);
echo $verschil;
?>

Nu geeft $verschil telkens een dag te veel weer.
Dit kan ik wel oplossen door er nog eens een dag af te trekken, maar
ik had wel graag geweten of dit normaal is of ik ergens een fout heb
gemaakt.

alvast bedankt
gs

Daniel Tryba
19/06/04, 15:45
GeertS <IkWilGeenSpam.geert.serneels@gmx.net_invalid> wrote:
> ik heb volgende code gebruikt:
> <?php
> $datum = "2004-06-20";
> $verschil_stamp = strtotime($datum) -
> mktime(0,0,0,date("m"),date("d"),date("Y"));
> $verschil = date("d",$verschil_stamp);
> echo $verschil;
> ?>
>
> Nu geeft $verschil telkens een dag te veel weer.

Dat is toeval. Bovenstaande code doet niet wat jij denkt dat het doet.
Stel je wilt het verschil in jaren op deze manier weergeven, dan krijg
je als antwoord (voor 'y') 70 ipv 0.

Je berekent het verschil in seconden tussen 2 data. Echter met de
laatste date() creeer je een datum met een x aantal seconden verschil
tov epoch (01-01-1970 0:0:0 UTC).

Het aantal dagen krijg je dus door het verschil te delen door het aantal
seconden in een dag.

--

Daniel Tryba