Avatar billede dennism Nybegynder
28. februar 2011 - 21:40 Der er 8 kommentarer og
1 løsning

Er en bestemt dag en helligdag?

Findes der en smart måde, hvorpå jeg i PHP kan bestemme, om en bestemt dag er en dansk helligdag? Der findes sandsynligvis ikke noget indbygger der kan klare det, men er der en anden måde, man kan finde ud af det på?
Avatar billede jakobdo Ekspert
28. februar 2011 - 21:43 #1
Hvis du kører pear, ved jeg ikke om du kan bruge denne pakke: http://pear.php.net/package/Date_Holidays_Denmark/
Avatar billede dennism Nybegynder
28. februar 2011 - 22:10 #2
Pear ser ikke ud til at være inkluderet på mit webhost. Kan man køre det alligevel, hvis man henter Pear ned manuelt?
Avatar billede jakobdo Ekspert
28. februar 2011 - 22:20 #3
Jeg er faktisk usikker på om pearl kan installeres manuelt.
Avatar billede dennism Nybegynder
28. februar 2011 - 22:27 #4
Pear var alligevel muligt på mit webhost. Kunne installere packets via et cpanel. Jeg har nu fået installeret "Date_Holidays_Denmark" og dets dependencies.

Jeg er helt blank på Pear. Hvordan kan jeg nu bruge den hentede package?
Avatar billede dennism Nybegynder
28. februar 2011 - 23:43 #5
Jeg fandt en løsning. Jeg kan nu hjemme om en given dag er en helligdag med følgende:

<?php
require_once("Date/Holidays.php");
$denmark = &Date_Holidays::factory('Denmark', 2011, 'da_DK');

$datetime = strtotime('2011-01-01');
if ($datetime) {
    if ($denmark->isHoliday($datetime)) {
        echo "is holiday";
    } else {
        echo "normal day";
    }   
}
?>

Mange tak for tippet. Vil du smide et svar?
Avatar billede jakobdo Ekspert
01. marts 2011 - 06:36 #6
Svar
Avatar billede jakobdo Ekspert
01. marts 2011 - 08:14 #7
Takker for point.
Avatar billede dennism Nybegynder
03. marts 2011 - 10:12 #8
Jeg sidder pt. med denne kode:

<?php
require_once("Date/Holidays.php");
$denmark = &Date_Holidays::factory('Denmark', 2011, 'da_DK');

$time = strtotime('2011-01-06');
echo date('l jS \of F Y h:i:s A',$time);
if ($time) {
    if ($denmark->isHoliday($time)) {
        echo " is holiday";
    } else {
        echo " normal day";
    }   
}
?>

Den ligger online her: http://demo.demaweb.dk/scripts/holiday/test.php

Har du nogen ide om, hvorfor den mener, at torsdag d. 6 januar var en helligdag i Danmark? Det er helligtrekonger den dag, men det er jo ikke en dag, der er helligdag i Danmark, hvor man holder fri. Har man mulighed for at slå dage som disse fra?
Avatar billede jakobdo Ekspert
03. marts 2011 - 10:22 #9
Det aner jeg desværre intet om.
Fandt bare scriptet på google.com :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester