====== Sprachabhängige Konfigurationsdateien ======
Bereits im Voraus feststehende Werte können in einer Konfigurationsdatei definiert werden. Damit stehen Sie mit nur einer PHP-Codezeile zur weiteren Verwendung als Array zur Verfügung.
**Wichtiger Sicherheitshinweis: Anders als bei einer PHP-Datei kann der Inhalt der Konfigurationsdatei von jedem eingesehen werden, der die URL im Browser aufruft. Daher hier auf keinen Fall sensible Daten wie Benutzernamen oder Passwörter definieren!**
[weekday]
0 = Sonntag
1 = Montag
2 = Dienstag
3 = Mittwoch
4 = Donnerstag
5 = Freitag
6 = Samstag
[month]
01 = Januar
02 = Februar
03 = März
04 = April
05 = Mai
06 = Juni
07 = Juli
08 = August
09 = September
10 = Oktober
11 = November
12 = Dezember
Für weitere Sprachen sind dementsprechende Dateien mit dem Dateinamen der jeweiligen Sprache anzulegen.
===== PHP-Klasse "language" =====
class language
{
private $language = array();
/**
* calendar constructor.
* @param string $language
* @throws Exception
*/
public function __construct( $language = 'german' )
{
$filename = $language . '.ini';
if( file_exists( $filename ) )
{
$this->language = parse_ini_file( $filename, true );
}
else
{
throw new Exception( $filename . ' not found!');
}
}
/**
* @param int $timestamp
* @return string
*/
public function getDayOfTheWeek( $timestamp )
{
$weekday = date( 'w', $timestamp );
return $this->language['weekday'][ $weekday];
}
/**
* @param int $timestamp
* @return string
*/
public function getMonth( $timestamp )
{
$month = date( 'm', $timestamp );
return $this->language['month'][ $month];
}
}
===== Anwendungsbeispiel für die Benutzung der PHP-Klasse "language" =====
$german = new language( 'german' );
echo "";
for( $day = 0; $day < 366; $day++ ) // jeden Tag des Jahres anzeigen
{
$timestamp = strtotime( '01.01.2016 ' . $day . ' day' );
$month = $german->getMonth( $timestamp );
$dayOfTheWeek = $german->getDayOfTheWeek( $timestamp );
echo "- Der " . date( "d.", $timestamp ) . " " . $month . " war ein " . $dayOfTheWeek . "
";
}
echo "
";
[[php:config|weitere Beispiele (z. B. Kommentare in ini-Dateien]]