Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: Eräpäivän laskeminen

El Dialblo [19.03.2007 10:52:33]

#

Hei taas,

kuinka lasken eräpäivän php:lla? esim täsätä päivästä eteenpäin seitsemän päivän päässä olevan arkipaivän? alottelija tarvii apua :)

-kiitos vastauksista etukäteen

kayttaja-2791 [19.03.2007 12:17:10]

#

<?php
echo $eräpäivä = date("d.m.y", time() + 86400 * 7);
?>

Idea siis on että toimitaan timestampeilla. time() + 86400 * 7 tekee timestampin 7 päivän päähän, ja date-funktio muuttaa sen tulostettavaan muotoon...

Edit:
Aha, piti olla arkipäivä... Voit tarkistaa onko se timestamp arkipäivä vaikka näin:

<?php
date("w", time() + 86400 * 7);
?>

Se siis palauttaa viikonpäivän numeerisena, "0 (for Sunday) through 6 (for Saturday)". Siitä vain sitten iffillä tai switchillä tarkastamaan onko kyseinen päivä arkipäivä...

El Dialblo [19.03.2007 14:41:48]

#

!Muchos gracias! Paljon kiitoksia!

peg [19.03.2007 15:12:27]

#

Älä laskuta lauantaisin äläkä sunnuntaisin tai sun tarvii tarkistaa myös ylityö korvaukset. Laskuta ma-pe ja just noin date("w", time() + 86400 * 7);

Grez [19.03.2007 21:21:58]

#

Jos laskujen on tarkoitus generoitua automaattisesti, niin ei taida paljon tietokone vaatia mitään ylityökorvauksia vaikka lisäisikin sen laskun kantaan viikonloppuna.

Jos ihan oikeita arkipäiviä haluat, niin joudut tavalla tai toisella kertomaan skriptille myös arkipyhät, että se osaa hypätä niiden yli lauantain ja sunnuntain lisäksi.

peg [20.03.2007 21:12:32]

#

Hyvä huomata myös nämä muutamat pyhät esim pääsiäinen joka on epäsäännöllinen,vaikkka sen pystyy kyllä jotenkin laskemaan, mutta ei ihan helposti.
Jos ei alta puutu montaa päivää ja katsoo 20vuotta eteenpäin noi, niin
se olisi ihan kätevä tännekin jakoon.
Erityispyhiä:
* Adventti
* Lucian päivä
* Joulu
* Loppiainen
* Laskiainen
* Palmusunnuntai
* Kiirastorstai
* Pitkäperjantai
* Pääsiäinen
* Helatorstai
* Kynttilänpäivä
* Marian ilmestyspäivä
* Juhannuspäivä
* Mikkelinpäivä
* Pyhäinpäivä
* Helluntai
* Vappu
* Kaatuneiden päivä
* Itsenäisyyspäivä

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta