@@ -10,6 +10,8 @@ Desde el 17 de diciembre de 2021, los DUIs son NITs válidos para personas natur
10
10
11
11
Las personas jurídicas no se ven afectadas por este cambio, por lo que aún debe usar la validación de NIT para ellas.
12
12
13
+ También hay una opción para anular esta funcionalidad en la biblioteca cuando sea necesario.
14
+
13
15
## Instalación
14
16
Puedes usar composer para instalar idSV en ty proyecto:
15
17
@@ -19,44 +21,78 @@ composer require avalontechsv/idSV
19
21
20
22
## Uso
21
23
``` php
22
- use avalontechsv\idSV;
24
+ use avalontechsv\idSV\idSV ;
23
25
24
- $validator = new idSV;
26
+ $validator = new idSV() ;
25
27
26
28
// Validación de DUI
27
- // Validar DUI en el formato 00000000-0
28
- $validator->isValidDUI('00000000-0'); // true
29
- $validator->isValidDUI('00000000-1'); // false
29
+ // Validar DUI en formato 00000000-0
30
+ var_dump( $validator->isValidDUI('00000000-0') ); // true
31
+ var_dump( $validator->isValidDUI('00000000-1') ); // false
30
32
31
- // Validar DUI en el formato 000000000
32
- $validator->isValidDUI('000000000'); // true
33
- $validator->isValidDUI('000000001'); // false
33
+ // Validar DUI en formato 000000000
34
+ var_dump( $validator->isValidDUI('000000000') ); // true
35
+ var_dump( $validator->isValidDUI('000000001') ); // false
34
36
35
- // La biblioteca eliminará automáticamente los espacios en blanco.
36
- // Esto es útil cuando está validando entradas de un usuario.
37
- $validator->isValidDUI(' 000000000 '); // true
37
+ // Esta libraría automáticamente elimina los espacios en blanco.
38
+ // Esto es útil cuando estás validando la entrada del usuario.
39
+ var_dump( $validator->isValidDUI(' 000000000 ') ); // true
38
40
39
41
// Validación de NIT
40
- // Validar NIT en el formato 0000-000000-000-0
41
- $validator->isValidNIT('0000-000000-000-0'); // true
42
- $validator->isValidNIT('0000-000000-000-1'); // false
43
-
44
- // Validar NIT en el formato 0000000000000
45
- $validator->isValidNIT('0000000000000'); // true
46
- $validator->isValidNIT('0000000000001'); // false
47
-
48
- // También puede validar NITs para personas naturales
49
- // en el formato DUI.
50
- $validator->isValidNIT('00000000-0'); // true
51
- $validator->isValidNIT('00000000-1'); // false
52
-
53
- // La biblioteca eliminará automáticamente los espacios en blanco.
54
- // Esto es útil cuando está validando entradas de un usuario.
55
- $validator->isValidNIT(' 0000000000000 '); // true
56
-
57
- // DUI y NIT también pueden ser nulos
58
- $validator->isValidDUI(null); // false
59
- $validator->isValidNIT(null); // false
42
+ // Validar NIT en formato 0000-000000-000-0
43
+ var_dump($validator->isValidNIT('0000-000000-000-0')); // true
44
+ var_dump($validator->isValidNIT('0000-000000-000-1')); // false
45
+
46
+ // Validar NIT en formato 0000000000000
47
+ var_dump($validator->isValidNIT('0000000000000')); // true
48
+ var_dump($validator->isValidNIT('0000000000001')); // false
49
+
50
+ // También se puede validar un DUI como NIT para personas naturales
51
+ var_dump($validator->isValidNIT('00000000-0')); // true
52
+ var_dump($validator->isValidNIT('00000000-1')); // false
53
+
54
+ // Esta libraría automáticamente elimina los espacios en blanco.
55
+ // Esto es útil cuando estás validando la entrada del usuario.
56
+ var_dump($validator->isValidNIT(' 0000000000000 ')); // true
57
+
58
+ // Los DUI y NIT también pueden ser nulos
59
+ var_dump($validator->isValidDUI(null)); // false
60
+ var_dump($validator->isValidNIT(null)); // false
61
+
62
+ // Formateo de DUI y NIT
63
+
64
+ // Formatear DUI en el formato 00000000-0
65
+ var_dump($validator->formatDUI('000000000')); // 00000000-0
66
+
67
+ // Cadenas más cortas se rellenan con ceros
68
+ var_dump($validator->formatDUI('00')); // 00000000-0
69
+
70
+ // Si un DUI ya está formateado, se devolverá como está
71
+ var_dump($validator->formatDUI('00000000-0')); // 00000000-0
72
+
73
+ // Si se intenta formatear un DUI inválido, se genera una excepción
74
+ try { $validator->formatDUI('000000001'); } catch (\Exception $e) { echo 'Exception: ' . $e->getMessage(); } // Exception: Invalid DUI
75
+
76
+ // Formatear NIT en el formato 0000-000000-000-0
77
+ var_dump($validator->formatNIT('00000000000000')); // 0000-000000-000-0
78
+
79
+ // Cadenas más cortas se rellenan con ceros
80
+ var_dump($validator->formatNIT('00')); // 0000-000000-000-0
81
+
82
+ // Si un NIT ya está formateado, se devolverá como está
83
+ var_dump($validator->formatNIT('0000-000000-000-0')); // 0000-000000-000-0
84
+
85
+ // Los DUIs válidos se formatearán como DUIs en el formateador de NIT por defecto
86
+ var_dump($validator->formatNIT('000000000')); // 00000000-0
87
+
88
+ // Se puede desactivar el formateo de DUIs como NITs
89
+ var_dump($validator->formatNIT('000000000', false)); // 0000-000000-000-0
90
+
91
+ // El rellenado de ceros también se aplica a los NIT con formateo de DUI desactivado
92
+ var_dump($validator->formatNIT('00', false)); // 0000-000000-000-0
93
+
94
+ // Si se intenta formatear un NIT inválido, se genera una excepción
95
+ try { $validator->formatNIT('0000000000001'); } catch (\Exception $e) { echo 'Exception: ' . $e->getMessage() . '\n'; } // Exception: Invalid NIT
60
96
```
61
97
## Pruebas
62
98
Puedes ejecutar las pruebas con PHPUnit:
0 commit comments