getal2tekst.php
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
<?php
function getal2tekst($getal)
{
// echo 'Binnenkomst: ' . $getal;
$t = explode(",", 'nul, een, twee, drie, vier, vijf, zes, zeven, acht, negen, tien, elf, twaalf, dertien, viertien, vijftien, zestien, zeventien, achttien, negentien, twintig');
$t['00'] = '';
$t['01'] = $t[1];
$t['02'] = $t[2];
$t['03'] = $t[3];
$t['04'] = $t[4];
$t['05'] = $t[5];
$t['06'] = $t[6];
$t['07'] = $t[7];
$t['08'] = $t[8];
$t['09'] = $t[9];
$t[10] = 'tien';
$t[20] = 'twintig';
$t[30] = 'dertig';
$t[40] = 'veertig';
$t[50] = 'vijftig';
$t[60] = 'zestig';
$t[70] = 'zeventig';
$t[80] = 'tachtig';
$t[90] = 'negentig';
$t[100] = 'honderd';
$t[1000] = 'duizend';
$t[2000] = 'tweeduizend';
$t[3000] = 'drieduizend';
$t[4000] = 'vierduizend';
$t[5000] = 'vijfduizend';
$t[6000] = 'zesduizend';
$t[7000] = 'zevenduizend';
$t[8000] = 'achtduizend';
$t[9000] = 'negenduizend';
if (isset($t[$getal])) {
//echo 'Ik kies ' . $t[$getal];
$tekst = $t[$getal];
} elseif ($getal < 100) {
$eental = substr($getal, -1, 1);
$tiental = substr($getal, 0, 1) . "0";
$tekst = $t[$eental] . 'en' . $t[$tiental];
// twee-en-.... filter
$tekst = str_replace("tweeen", "tweeën", $tekst);
$tekst = str_replace("drieen", "drieën", $tekst);
return trim($tekst);
} else {
// veelvoud van honderd, dus elfhonderd, dertienhonderd etc
$bovendehonderd = getal2tekst(substr($getal, 0, 2)) . 'honderd';
$onderdehonderd = getal2tekst(substr($getal, -2, 2));
$tekst = $bovendehonderd . $onderdehonderd;
}
// haal de eenhonderd en eenduizend eruit
$tekst = str_replace("eenhonderd", "honderd", $tekst);
$tekst = str_replace("eenduizend", "duizend", $tekst);
$tekst = str_replace("tienhonderd", "duizend", $tekst);
$tekst = str_replace("twintighonderd", "tweeduizend", $tekst);
$tekst = str_replace("dertighonderd", "drieduizend", $tekst);
$tekst = str_replace("veertighonderd", "vierduizend", $tekst);
$tekst = str_replace("veertighonderd", "vierduizend", $tekst);
$tekst = str_replace("vjftighonderd", "vijfduizend", $tekst);
$tekst = str_replace("zestighonderd", "zesduizend", $tekst);
$tekst = str_replace("zeventighonderd", "zevenduizend", $tekst);
$tekst = str_replace("tachtigduizend", "achtduizend", $tekst);
$tekst = str_replace("negentigduizend", "negenduizend", $tekst);
$tekst = str_replace("duizenden", "duizend ", $tekst);
$tekst = str_replace(" ", "", $tekst);
$tekst = str_replace("duizend", "duizend ", $tekst);
// geef terug
return trim($tekst);
}
function getal2tekst($getal)
{
// echo 'Binnenkomst: ' . $getal;
$t = explode(",", 'nul, een, twee, drie, vier, vijf, zes, zeven, acht, negen, tien, elf, twaalf, dertien, viertien, vijftien, zestien, zeventien, achttien, negentien, twintig');
$t['00'] = '';
$t['01'] = $t[1];
$t['02'] = $t[2];
$t['03'] = $t[3];
$t['04'] = $t[4];
$t['05'] = $t[5];
$t['06'] = $t[6];
$t['07'] = $t[7];
$t['08'] = $t[8];
$t['09'] = $t[9];
$t[10] = 'tien';
$t[20] = 'twintig';
$t[30] = 'dertig';
$t[40] = 'veertig';
$t[50] = 'vijftig';
$t[60] = 'zestig';
$t[70] = 'zeventig';
$t[80] = 'tachtig';
$t[90] = 'negentig';
$t[100] = 'honderd';
$t[1000] = 'duizend';
$t[2000] = 'tweeduizend';
$t[3000] = 'drieduizend';
$t[4000] = 'vierduizend';
$t[5000] = 'vijfduizend';
$t[6000] = 'zesduizend';
$t[7000] = 'zevenduizend';
$t[8000] = 'achtduizend';
$t[9000] = 'negenduizend';
if (isset($t[$getal])) {
//echo 'Ik kies ' . $t[$getal];
$tekst = $t[$getal];
} elseif ($getal < 100) {
$eental = substr($getal, -1, 1);
$tiental = substr($getal, 0, 1) . "0";
$tekst = $t[$eental] . 'en' . $t[$tiental];
// twee-en-.... filter
$tekst = str_replace("tweeen", "tweeën", $tekst);
$tekst = str_replace("drieen", "drieën", $tekst);
return trim($tekst);
} else {
// veelvoud van honderd, dus elfhonderd, dertienhonderd etc
$bovendehonderd = getal2tekst(substr($getal, 0, 2)) . 'honderd';
$onderdehonderd = getal2tekst(substr($getal, -2, 2));
$tekst = $bovendehonderd . $onderdehonderd;
}
// haal de eenhonderd en eenduizend eruit
$tekst = str_replace("eenhonderd", "honderd", $tekst);
$tekst = str_replace("eenduizend", "duizend", $tekst);
$tekst = str_replace("tienhonderd", "duizend", $tekst);
$tekst = str_replace("twintighonderd", "tweeduizend", $tekst);
$tekst = str_replace("dertighonderd", "drieduizend", $tekst);
$tekst = str_replace("veertighonderd", "vierduizend", $tekst);
$tekst = str_replace("veertighonderd", "vierduizend", $tekst);
$tekst = str_replace("vjftighonderd", "vijfduizend", $tekst);
$tekst = str_replace("zestighonderd", "zesduizend", $tekst);
$tekst = str_replace("zeventighonderd", "zevenduizend", $tekst);
$tekst = str_replace("tachtigduizend", "achtduizend", $tekst);
$tekst = str_replace("negentigduizend", "negenduizend", $tekst);
$tekst = str_replace("duizenden", "duizend ", $tekst);
$tekst = str_replace(" ", "", $tekst);
$tekst = str_replace("duizend", "duizend ", $tekst);
// geef terug
return trim($tekst);
}