public function NumerosaLetras($cantidad) {
if ($cantidad == "0.00" || $cantidad == "0") {
return "CERO PESOS 00/100 M. N.";
} else {
$ent = explode(".", $cantidad);
$arreglo = str_split($ent[0]);
$longitud = count($arreglo);
switch ($longitud) {
case 1:
$numero = $this->unidades($arreglo[0]);
break;
case 2:
$numero = $this->decenas($arreglo[0], $arreglo[1]);
break;
case 3:
$numero = $this->centenas($arreglo[0], $arreglo[1], $arreglo[2]);
break;
case 4:
$numero = $this->unidadesdemillar($arreglo[0], $arreglo[1], $arreglo[2], $arreglo[3]);
break;
case 5:
$numero = $this->decenasdemillar($arreglo[0], $arreglo[1], $arreglo[2], $arreglo[3], $arreglo[4]);
break;
}
return $numero . " PESOS " . $ent[1] . "/100 M. N.";
}
}
private function unidades($unidad) {
$unidades = array('1' => 'UN ',
'2' => 'DOS ',
'3' => 'TRES ',
'4' => 'CUATRO ',
'5' => 'CINCO ',
'6' => 'SEIS ',
'7' => 'SIETE ',
'8' => 'OCHO ',
'9' => 'NUEVE ');
return $unidades[$unidad];
}
private function decenas($decena, $unidad) {
$diez = array('1' => 'ONCE',
'2' => 'DOCE',
'3' => 'TRECE',
'4' => 'CATORCE',
'5' => 'QUINCE',
'6' => 'DIECISEIS',
'7' => 'DIECISIETE',
'8' => 'DIECIOCHO',
'9' => 'DIECINUEVE'
);
$decenas = array('1' => 'DIEZ',
'2' => 'VEINTE',
'3' => 'TREINTA ',
'4' => 'CUARENTA ',
'5' => 'CINCUENTA ',
'6' => 'SESENTA ',
'7' => 'SETENTA ',
'8' => 'OCHENTA ',
'9' => 'NOVENTA ');
if ($decena == 1) {
if ($unidad == 0) {
return $decenas[$decena];
} else {
return $diez[$unidad];
}
} elseif ($decena == 2) {
if ($unidad == 0) {
return $decenas[$decena];
} else {
return $veinte = "VEINTI" . $this->unidades($unidad);
}
} else {
return $decenas[$decena] . " Y " . $this->unidades($unidad);
}
}
private function centenas($centena, $decena, $unidad) {
$centenas = array('1' => "CIENTO ",
'2' => "DOSCIENTOS ",
'3' => "TRESCIENTOS ",
'4' => "CUATROCIENTOS ",
'5' => "QUINIENTOS ",
'6' => "SEISCIENTOS ",
'7' => "SETECIENTOS ",
'8' => "OCHOCIENTOS ",
'9' => "NOVECIENTOS ");
if ($centena == 1 && $decena == 0 && $unidad == 0) {
return "CIEN ";
}
if ($decena == 0) {
$numero = $centenas[$centena] . "" . $this->decenas($decena, $unidad);
return str_replace(" Y ", " ", $numero);
} else {
return $centenas[$centena] . "" . $this->decenas($decena, $unidad);
}
}
private function unidadesdemillar($unimill, $centena, $decena, $unidad) {
$numero = $this->unidades($unimill) . " MIL " . $this->centenas($centena, $decena, $unidad);
$numero = str_replace("UN MIL ", "MIL ", $numero);
if ($unidad == 0) {
return str_replace(" Y ", " ", $numero);
} else {
return $numero;
}
}
private function decenasdemillar($decemill, $unimill, $centena, $decena, $unidad) {
$numero = $this->decenas($decemill, $unimill) . " MIL " . $this->centenas($centena, $decena, $unidad);
return $numero;
}
Be the first to comment
You can use [html][/html], [css][/css], [php][/php] and more to embed the code. Urls are automatically hyperlinked. Line breaks and paragraphs are automatically generated.