luecano/numero-a-letras

Convierte un número a letras.

Fund package maintenance!
lecano

v3.0.0 2021-03-05 15:13 UTC

This package is auto-updated.

Last update: 2024-03-24 14:58:43 UTC


README

tests StyleCI Latest Stable Version Total Downloads License

Logo

Librería PHP para convertir un número a letras, palabras o texto.

Instalar

PHP 7.2+ y 8.0+:

composer require luecano/numero-a-letras "^3.0"

PHP 5.6, 7.0 y 7.1:

composer require luecano/numero-a-letras "^2.0"

Uso

Agregar referencia a librería.

require 'vendor/autoload.php';
use Luecano\NumeroALetras\NumeroALetras;

Convertir un número a letras o palabras

$formatter = new NumeroALetras();
echo $formatter->toWords($number, $decimals);

Parámetros:

  • int|float $number (requerido) El número a convertir.

  • int $decimals (opcional) Establece el número de decimales, valor por defecto es 2.

Convertir un número a letras en formato moneda

$formatter = new NumeroALetras();
echo $formatter->toMoney($number, $decimals, $currency, $cents);

Parámetros:

  • int|float $number (requerido) El número a convertir.

  • int $decimals (opcional) Establece el número de decimales, valor por defecto es 2.

  • string $currency (opcional) Establece el nombre o código de moneda para la parte entera, valor por defecto es string vacío.

  • string $cents (opcional) Establece el nombre o código para la parte decimal, valor por defecto es string vacío.

Convertir un número a letras en formato libre

$formatter = new NumeroALetras();
echo $formatter->toString($number, $decimals, $whole_str, $decimal_str);

Parámetros:

  • int|float $number (requerido) El número a convertir.

  • int $decimals (opcional) Establece el número de decimales, valor por defecto es 2.

  • string $whole_str (opcional) Establece el texto para la parte entera, valor por defecto es string vacío.

  • string $decimal_str (opcional) Establece el texto para la parte decimal, valor por defecto es string vacío.

Convertir un número a letras en formato de facturación electrónica SUNAT

$formatter = new NumeroALetras();
echo $formatter->toInvoice($number, $decimals, $currency);

Parámetros:

  • int|float $number (requerido) El número a convertir.

  • int $decimals (opcional) Establece el número de decimales, valor por defecto es 2.

  • string $currency (opcional) Establece el nombre o código de moneda, valor por defecto es string vacío.

Apócope de uno

Para cambiar la palabra 'UNO' por 'UN' hacer lo siguiente:

$formatter = new NumeroALetras();
$formatter->apocope = true;

Conector

Para cambiar la palabra 'CON' por otra de su preferencia hacer lo siguiente:

$formatter = new NumeroALetras();
$formatter->conector = 'Y';

Ejemplos de uso

$formatter = new NumeroALetras();
echo $formatter->toWords(1100);

//MIL CIEN
$formatter = new NumeroALetras();
$formatter->apocope = true;
echo $formatter->toWords(101) . ' AÑOS';

//CIENTO UN AÑOS
$formatter = new NumeroALetras();
echo $formatter->toMoney(2500.90, 2, 'DÓLARES', 'CENTAVOS');

//DOS MIL QUINIENTOS DÓLARES CON NOVENTA CENTAVOS
$formatter = new NumeroALetras();
echo $formatter->toMoney(10.10, 2, 'SOLES', 'CENTIMOS');

//DIEZ SOLES CON DIEZ CENTIMOS
$formatter = new NumeroALetras();
$formatter->conector = 'Y';
echo $formatter->toMoney(11.10, 2, 'pesos', 'centavos');

//ONCE PESOS Y DIEZ CENTAVOS
$formatter = new NumeroALetras();
echo $formatter->toInvoice(1700.50, 2, 'soles');

//MIL SETECIENTOS CON 50/100 SOLES
$formatter = new NumeroALetras();
echo $formatter->toString(5.2, 1, 'años', 'meses');

//CINCO AÑOS CON DOS MESES

Contribuciones

Se aceptan contribuciones siguiendo el GitHub Flow. Crea una rama, agrega commits y abre un pull request.

Licencia

Software de código abierto con licencia MIT license.