Nieuw lid |
|
Hallo,
Ik ben bezig een functie te maken die een ingevoerd bedrag omzet naar centen.
Output zou bv kunnen zijn:
12 -> 1200
11,5 -> 1150
8,52 -> 852
Ik heb nu de volgende functie gemaakt, hij is nog lang niet af maar ik heb een probleem waar ik niet uit kom.
Wat ik ook als input geef de eerste ereg check geeft altijd een True, ook als ik ene , gebruik of geen van beide:
$prijs = "11.2";
if(ereg('.',$prijs)){ //Deze geeft altijd true:S
$prijs_explode = explode(".", $prijs);
if(strlen($prijs_explode['1']) == 1){
$prijs = $prijs_explode['0'].$prijs_explode['1'].'0';
}elseif(strlen($prijs_explode['1']) == 2){
$prijs = $prijs_explode['0'].$prijs_explode['1'];
}else{
$prijs = $prijs_explode['0'].substr($prijs_explode['1'],0,2);
}
}elseif(ereg(',',$prijs)){
$prijs_explode = explode(",", $prijs);
if(strlen($prijs_explode['1']) == 1){
$prijs = $prijs_explode['0'].$prijs_explode['1'].'0';
}elseif(strlen($prijs_explode['1']) == 2){
$prijs = $prijs_explode['0'].$prijs_explode['1'];
}else{
$prijs = $prijs_explode['0'].substr($prijs_explode['1'],0,2);
}
}else{
$prijs = $prijs.'00';
}
echo $prijs;
$prijs = "11.2"; if(ereg('.',$prijs)){ //Deze geeft altijd true:S $prijs_explode = explode(".", $prijs); if(strlen($prijs_explode['1']) == 1){ $prijs = $prijs_explode['0'].$prijs_explode['1'].'0'; }elseif(strlen($prijs_explode['1']) == 2){ $prijs = $prijs_explode['0'].$prijs_explode['1']; }else{ $prijs = $prijs_explode['0'].substr($prijs_explode['1'],0,2); } }elseif(ereg(',',$prijs)){ $prijs_explode = explode(",", $prijs); if(strlen($prijs_explode['1']) == 1){ $prijs = $prijs_explode['0'].$prijs_explode['1'].'0'; }elseif(strlen($prijs_explode['1']) == 2){ $prijs = $prijs_explode['0'].$prijs_explode['1']; }else{ $prijs = $prijs_explode['0'].substr($prijs_explode['1'],0,2); } }else{ $prijs = $prijs.'00'; }
Nu heb ik ook al Eregi geprobeerd maar dit hielp, zoals verwacht, ook niet.
Paul du Long
Dimby
|