Convertir números a letras

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.