php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger

PHP Einsteiger PHP Problemlösungen für Spracheinsteiger
Archive: 2004, 2004/2, 2005, 2005/2, 2006, 2007, 2008, 2009, 2010,

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 17.11.2011, 18:20  
Neuer Benutzer
 
Registriert seit: 15.11.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
resum befindet sich auf einem aufstrebenden Ast
Standard [Erledigt] "Bewegliche Feiertage" => easter_date

Hi

Ich hab wieder Probleme mit einer Übungsaufgabe.

Ich gebe ein Datum ein und das Skript liefert mir den Wochentag ausgeschriebenen. Außer es ist ein Feiertag dann wird der Wochentag durch
den Namen des Feiertages ersetzt.

Mein Skript funktioniert auch soweit, nur eben nicht die beweg. Feiertage.

Mein Weg ist nicht unbedingt der bester, mein Lehrer sage es gibt auch eine elegantere Lösung.
Ich bräuchte bitte einen Tip, Hinweis , Hilfestellung oder was auch immer für meinen Weg und wie dann der elegantere aussehen soll.

Ich hab leider nur Screenshots.

Bild1
Bildd2
Miniaturansicht angehängter Grafiken
erledigt-bewegliche-feiertage-easter_date-function.jpg  erledigt-bewegliche-feiertage-easter_date-feiertage.jpg  
resum ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 17.11.2011, 18:22  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.987
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Bitte Code posten, keine Bilder.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline   Mit Zitat antworten
Alt 17.11.2011, 18:39  
Neuer Benutzer
 
Registriert seit: 15.11.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
resum befindet sich auf einem aufstrebenden Ast
Standard

Schade, ist nicht möglich. Erst morgen Nachmittag.

Kann man sich das nicht trotzdem anschauen?
resum ist offline   Mit Zitat antworten
Alt 17.11.2011, 19:58  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

PHP-Code:
/* creating date-object of now */
$currDate = new DateTime'NOW', new DateTimeZone('Europe/Berlin') );

/* setting associative array for week- and specialdays */
$weekDays = array();
$weekDays['dayNames'] = array( 'Sonntag''Montag''Dienstag''Mittwoch''Donnerstag''Freitag''Samstag' );
$weekDays['specialDays'] = array(
    
'Neujahr' => '01.01',
    
'Heilige drei Könige' => '06.01',
    
'Staatsfeiertag' => '01.05',
    
'Maria Himmelfahrt' => '15.08',
    
'Nationalfeiertag' => '26.10',
    
'Allerheiligen' => '01.11',
    
'Maria Empfängnis' => '08.12',
    
'Heiliger Abend' => '24.12',
    
'Christtag' => '25.12',
    
'Stefanietag' => '26.12',
    
'Silvester' => '31.12',
    
'Ostermontag' => strftime'%d.%m'easter_date( (int)$currDate->format('Y') ) )
);

/* getting day of week */
$dayOfWeek getDayOfWeek$currDate$weekDays );
echo 
$dayOfWeek;


/* the small function to analyze day of given date-object */
function getDayOfWeek$dateObj, &$weekDays ) {
  
$isSpecialDay array_search$dateObj->format('d.m'), $weekDays['specialDays'] );
  return ( 
false !== $isSpecialDay)? $isSpecialDay$weekDays['dayNames'][(int)$dateObj->format('w')];

__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 18.11.2011, 08:12  
Erfahrener Benutzer
 
Benutzerbild von jspit
 
Registriert seit: 19.08.2011
Beiträge: 701
PHP-Kenntnisse:
Anfänger
jspit wird schon bald berühmt werden
Standard

easter_date liefert den Beginn des Osterfestes = Sonntag
PHP-Code:
'Ostersonntag' => strftime'%d.%m'easter_date( (int)$currDate->format('Y') ) ) ,
'Ostermontag' => strftime'%d.%m'strtotime("+1 day",easter_date( (int)$currDate->format('Y') )) ) 
jspit ist offline   Mit Zitat antworten
Alt 18.11.2011, 17:35  
Neuer Benutzer
 
Registriert seit: 15.11.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
resum befindet sich auf einem aufstrebenden Ast
Standard

Habs heute alleine hinbekommen. Trotzdem Danke!"
resum ist offline   Mit Zitat antworten
Alt 18.11.2011, 17:45  
Erfahrener Benutzer
 
Benutzerbild von Arne Drews
 
Registriert seit: 22.04.2009
Beiträge: 3.486
PHP-Kenntnisse:
Anfänger
Arne Drews wird schon bald berühmt werdenArne Drews wird schon bald berühmt werden
Arne Drews eine Nachricht über Skype™ schicken
Standard

Dann lass doch bitte die Nachwelt teil haben an Deiner Variante!
Vielleicht sucht ja jemand so etwas auch mal, dann wärs doch interessant, wie Du's gelöst hast!
__________________
Phantasie ist wichtiger als Wissen, denn Wissen ist begrenzt.
Probleme kann man niemals mit derselben Denkweise lösen, durch die sie entstanden sind.
Albert Einstein
Arne Drews ist offline   Mit Zitat antworten
Alt 13.12.2011, 08:59  
Neuer Benutzer
 
Registriert seit: 15.11.2011
Beiträge: 15
PHP-Kenntnisse:
Anfänger
resum befindet sich auf einem aufstrebenden Ast
Standard

Ok, etwas später aber...

PHP-Code:
<?
function wochentag($date1) {
    
    list(
$tag,$monat,$jahr) = explode("."$date1);
    
    
$ergebnis date("w",mktime(0,0,0,$monat,$tag,$jahr));
    
$erg date("d.m",mktime(0,0,0,$monat,$tag,$jahr));

    
$ostern date("d.m.Y" easter_date($jahr));
    list(
$ostertag,$ostermonat,$osterjahr) = explode("."$ostern);
    
    
$feiertag = array("01.01" => array ("Neujahr"), 
                      
"06.01" => array ("Heilige Drei Könige"),
                      
"01.05" => array ("Staatsfeiertag"),
                      
"15.08" => array ("Maria Himmelfahrt"), 
                      
"10.10" => array ("Tag der Volksabstimmung"),
                      
"26.10" => array ("Nationalfeiertag"),
                      
"01.11" => array ("Allerheiligen"),
                      
"08.12" => array ("Maria Empfängnis"),
                      
"24.12" => array ("Heiliger Abend"),
                      
"25.12" => array ("Christtag"),
                      
"26.12" => array ("Stefanitag"),
                      
"31.12" => array ("Silvester"),
                      
date("d.m",mktime(0,0,0,$ostermonat,$ostertag,$osterjahr)) => array ("Ostersonntag"),
                      
date("d.m",mktime(0,0,0,$ostermonat,$ostertag +1,$osterjahr)) => array ("Ostermontag"),
                      
date("d.m",mktime(0,0,0,$ostermonat,$ostertag +39,$osterjahr)) => array ("Christi Himmelfahrt"),
                      
date("d.m",mktime(0,0,0,$ostermonat,$ostertag +50,$osterjahr)) => array ("Pfingstmontag"),
                      
date("d.m",mktime(0,0,0,$ostermonat,$ostertag +60,$osterjahr)) => array ("Fronleichnam"));
                          
    
$a_wstr = array("So""Mo""Di""Mi""Do""Fr""Sa");
    
    
$day $feiertag;
    
    if (isset(
$feiertag[$erg])) {
        
$day $feiertag[$erg][0];
    } else {
        
$day $a_wstr[$ergebnis];
    }

    return 
$day;
    
}
?>
resum ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
[Erledigt] array sortieren PHP Tipps 2004 17 13.05.2009 10:44
[Erledigt] PHP Formular =&gt; Problem =&gt; Email kommt nicht an... benschiaa PHP Tipps 2009 21 25.03.2009 11:54
Abfrage in Webmaske => Parameterübergabe => Datenausgabe cohete Datenbanken 0 12.01.2009 18:11
Download => Bearbeitung => Upload RoDa PHP Tipps 2005-2 5 30.06.2005 11:38

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
javascript feiertage in array, javascript script für bewegliche feiertage, easter_date php probleme, $feiertage = array(, php quot

Alle Zeitangaben in WEZ +2. Es ist jetzt 16:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum