Teil von  SELFPHP   Teil von  Code Snippets / PHP / Zeit- und Datumsoperationen
  +++ SELFPHP CronJob-Service :: Jetzt auch als Professional-Version verfügbar! +++



:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: SELFPHP Forum ::

Fragen rund um die Themen PHP? In über 120.000 Beiträgen finden Sie sicher die passende Antwort!  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

:: Qozido ::

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler.   

 
 
Den aktuellen Monat in Kalenderform darstellen





Beispielaufgabe

Es soll eine Kalenderansicht für den aktuellen Monat ausgegeben werden, wobei der aktuelle Tag hervorgehoben werden soll.



Beschreibung

Die FOR-Schleife im folgenden Code Snippet, baut die Tabelle für die Monatsansicht des aktuellen Monats auf. Hier wird zuerst die Tabelle mit Leerzellen gefüllt, bis zu dem Wochentag, an dem der Monat beginnt. Danach wird die Tabelle mit den Monatstagen gefüllt und der aktuelle Tag besonders hervorgehoben.



<?PHP
  $strBuildMonth 
'<table><tr>';

  
// Tag der Woche 0 (fuer Sonntag) - 6 (fuer Samstag)
  
$iDayOfWeek date 'w'mktime 000date 'n' ), 1,
                       
date 'Y' ) ) );

  if ( !
$iDayOfWeek )
  {
    
// Woche beginnt mit Montag, deshalb Sonntag
    // Wochentag 7 statt 0 zuweisen.
    
$iDayOfWeek 7;
  }

  
// Tabellenkopf der Monatsansicht. Zum Beispiel:
  //
  //   April
  // M D M D F S S
  //
  
$strBuildMonth .= '<table style="border: 2px solid #bcbcbc; background' .
                    
'-color: #fff;"><tr><td colspan="7" style="text-' .
                    
'align: center;">' date 'F'mktime 000,
                    
date 'n' ), 1date 'Y' ) ) ) . '</td></tr><tr>' .
                    
'<td>M</td><td>D</td><td>M</td><td>D</td><td>F</td>' .
                    
'<td>S</td><td>S</td></tr><tr>';

  
$iLimit date 't'mktime 000date 'n' ), 1,
                   
date 'Y' ) ) );

  for ( 
$i 1$i <= ( $iLimit $iDayOfWeek ); $i++ )
  {
    
$iDayOfMonth $i $iDayOfWeek 1;

    if ( 
$i $iDayOfWeek )
    {
      
// Leerzellen schreiben, bis Monatsanfang
      // auf den richtigen Tag der Woche fällt.
      
$strBuildMonth .= '<td>&nbsp;</td>';
    } 
    elseif ( 
$iDayOfMonth == date 'd' ) )
    {
      
// Heutigen Tag, hervorheben.
      
$strBuildMonth .= '<td style="background-color: #889fca; ' .
                        
'font-weight: bold;">' $iDayOfMonth '</td>';
    }
    else
    {
      
$strBuildMonth .= '<td>' $iDayOfMonth '</td>';
    }

    if ( !( 
$i ) )
    {
      
// Am Ende eines jeden 7. Durchlaufs die Tabelle umbrechen.
      
$strBuildMonth .= '</tr><tr>';
    }
  }

  
$strBuildMonth .= '</tr></table>';

  
// Anwendungsbeispiel
  
print ( $strBuildMonth );
?>



Ausgabebeispiel: Browseransicht

April
MDMDFSS
      1
2345678
9101112131415
16171819202122
23242526272829
30






 




:: Premium-Partner ::

Webhosting/Serverlösungen


Premium-Partner MECO Systemhaus GmbH & Co. KG
Premium-Partner PSW GROUP GmbH & Co. KG
Premium-Partner BPI-Systeme
Premium-Partner Pixel X
Premium-Partner
 

:: SELFPHP Sponsoren ::


Microsoft Deutschland GmbH
twosteps.net - ...Premium-Webhosting
Sedo - Bei uns wird PHP großgeschrieben
hostfactory.ch - OptimaNet Schweiz AG
ZEND - The PHP Company
Kaspersky Labs
HighText iBusiness
SELFPHP Sponsoren
 

Qozido


© 2001-2009 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt