har en tabel der hedder måneder i min database og være gange der er gåede 30 dage skal den plus de måneder der står i forvejen med +1 nogle der har en ide om hvordan det kan gøres På forhånd tak :)
Du kan gøre det med et cronjob der kører en gang om måneden, men det er en dum måde at gøre det.
Meget smartere er at gemme en fast dato når rækken oprettes, og når du så skal vide hvor mange måneder der er gået, trækker du den dato fra den nuværende dato.
Det mest normale vil være, at hvis noget blev oprettet for f.eks. 2 år siden, så vil der stå der er gået 24 måneder. I så fald skal du ikke gøre noget - det er udgangspunktet når du trækker to datoer fra hinanden.
F.eks. kan du gøre:
$d1 = new DateTime('2016-03-01'); $d2 = new DateTime(); $diff = $d2->diff($d1);
Den første dato skal naturligvis være den du henter fra databaseb. $diff vil nu indeholde et DateTime-objekt med forskellen på de to datoer, så du kan udskrive antal år og måneder (eller gange år med 12 og lægge det oven i måneder, hvis du vil have antal måneder).
Men hvis du ønsker noget andet end det, må du gerne beskrive det.
tror jeg er noglelunde med men hvis vi siger han er oprettet den 15/06/2017 så er der gået 8 måneder 15/02/2018 så skal der lægges 8 til men der må jeg jo ikke gange 1 med 12 selv om året har ændret sig for så får jeg jo lige pludselig 20 stedfor 8
Det er slet ikke noget problem, for det du får ud af diff-funktionen er et DateInverval objekt, altså et objekt der repræsenterer hvor lang tid der er mellem de to datoer.
Mellem 15/06/2017 og 15/02/2018 vil du altså få et objekt bestående af y => 0 m => 8
Det betyder intet om året er skiftet. Den er kun interesseret i tiden mellem de to.
brugte den her $dato1 = new DateTime('2010-01-19'); $dato2 = new DateTime('now'); $interval = $dato2->diff($dato1);
echo $interval->format('%m month');
altså dato1 skal laves om til dato da det er variablen er det der hvor jeg opretter personerne ($dato = date("Ymd") men bare i tvivl om hvor jeg skal placer koden kode hvor jeg opretter personer
<?php include("app.php"); $app = new minAwesomeApp; ?> <?php
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.