Datum in het nederlands
Ik haal op mijn blog pagina zo de datum uit de database.
Die staat erin als datetime field.
Maar nu krijg ik natuurlijk MON voor Maandag en ik wil graag MAA, DIN, WOE enz enz.
Hoe kan ik dat het beste aanpassen?
Thanks.
Tim
Code (php)
Maar ook geen foutmelding.
date().
Kijk eens naar de function De key in je array is hoofdletter gevoelig.
Edit:
Waarom is de 'r' in Vr (van Vrijdag) lowercase terwijl bij de andere Nederlandse dagen ALLES uppercase is?
Waarom is de 'r' in Vr (van Vrijdag) lowercase terwijl bij de andere Nederlandse dagen ALLES uppercase is?
Gewijzigd op 01/01/1970 01:00:00 door Mark L
Bedankt!
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?php
/**
* @author dzjemo
* @copyright 2009
*/
class DutchDate {
public $datum;
private $aTranslateDayShort = array('mon'=>'ma','tue'=>'di','wed'=>'wo','thu'=>'do','fri'=>'vr','sat'=>'za','sun'=>'zo');
private $aTranslateDayLong = array('monday'=>'maandag','tuesday'=>'dinsdag','wednesday'=>'woensdag','thursday'=>'donderdag','friday'=>'vrijdag','saturday'=>'zaterdag','sunday'=>'zondag');
private $aTranslateMonShort = array('jan'=>'jan','feb'=>'feb','mar'=>'mrt','apr'=>'apr','mai'=>'mei','jun'=>'juni','jul'=>'juli','aug'=>'aug','sep'=>'sept','oct'=>'okt','nov'=>'nov','dec'=>'dec');
private $aTranslateMonLong = array('january'=>'januari','february'=>'februari','march'=>'maart','april'=>'april','mai'=>'mei','june'=>'juni','july'=>'juli','august'=>'augustus','september'=>'september','october'=>'oktober','november'=>'november','december'=>'december');
public function __construct($datum) {
$this->datum = strtolower($datum);
$this->translate();
}
public function translate() {
$bDaylong = $bDayshort = $bMonshort = $bMonlong = false;
foreach(array_keys($aTranslateDayLong) as $sDayLong) {
if(preg_match('_'.$sDayLong.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayLong),array_values($aTranslateDayLong),$this->datum);
}
}
foreach(array_keys($aTranslateDayShort) as $sDayShort) {
if(preg_match('_'.$sDayShort.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayShort),array_values($aTranslateDayShort),$this->datum);
}
}
foreach(array_keys($aTranslateMonLong) as $sMonLong) {
if(preg_match('_'.$sMonLong.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayLong),array_values($aTranslateDayLong),$this->datum);
}
}
foreach(array_keys($aTranslateMonShort) as $sMonShort) {
if(preg_match('_'.$sMonShort.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateMonShort),array_values($aTranslateMonShort),$this->datum);
}
}
}
public function get() {
return $this->datum;
}
}
$dutchdate = new DutchDate('mon, 03 feb 2009');
echo $dutchdate->get();
?>
/**
* @author dzjemo
* @copyright 2009
*/
class DutchDate {
public $datum;
private $aTranslateDayShort = array('mon'=>'ma','tue'=>'di','wed'=>'wo','thu'=>'do','fri'=>'vr','sat'=>'za','sun'=>'zo');
private $aTranslateDayLong = array('monday'=>'maandag','tuesday'=>'dinsdag','wednesday'=>'woensdag','thursday'=>'donderdag','friday'=>'vrijdag','saturday'=>'zaterdag','sunday'=>'zondag');
private $aTranslateMonShort = array('jan'=>'jan','feb'=>'feb','mar'=>'mrt','apr'=>'apr','mai'=>'mei','jun'=>'juni','jul'=>'juli','aug'=>'aug','sep'=>'sept','oct'=>'okt','nov'=>'nov','dec'=>'dec');
private $aTranslateMonLong = array('january'=>'januari','february'=>'februari','march'=>'maart','april'=>'april','mai'=>'mei','june'=>'juni','july'=>'juli','august'=>'augustus','september'=>'september','october'=>'oktober','november'=>'november','december'=>'december');
public function __construct($datum) {
$this->datum = strtolower($datum);
$this->translate();
}
public function translate() {
$bDaylong = $bDayshort = $bMonshort = $bMonlong = false;
foreach(array_keys($aTranslateDayLong) as $sDayLong) {
if(preg_match('_'.$sDayLong.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayLong),array_values($aTranslateDayLong),$this->datum);
}
}
foreach(array_keys($aTranslateDayShort) as $sDayShort) {
if(preg_match('_'.$sDayShort.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayShort),array_values($aTranslateDayShort),$this->datum);
}
}
foreach(array_keys($aTranslateMonLong) as $sMonLong) {
if(preg_match('_'.$sMonLong.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateDayLong),array_values($aTranslateDayLong),$this->datum);
}
}
foreach(array_keys($aTranslateMonShort) as $sMonShort) {
if(preg_match('_'.$sMonShort.'_', $this->datum)) {
$this->datum = str_replace(array_keys($aTranslateMonShort),array_values($aTranslateMonShort),$this->datum);
}
}
}
public function get() {
return $this->datum;
}
}
$dutchdate = new DutchDate('mon, 03 feb 2009');
echo $dutchdate->get();
?>
Een klasse die ik ooit eens gemaakt heb om dat sneller te laten doen. Echter is het enige dat de output altijd in kleine letters is, ik moet daar nog steeds een keer beter naar kijken, hoe de output in de vorm (kleine en grote letters) kan blijven staan... Het werkt in ieder geval wel stukken sneller als je die klasse gewoon ergens in een bestandje zet dat je telkens include().
Edit: heb 'm een beetje veranderd, hij zoekt nu zelf op wat 'ie moet vertalen.
Gewijzigd op 01/01/1970 01:00:00 door Jesper Diovo