PluginProbe
GiveWP – Donation Plugin and Fundraising Platform / 2.24.2
GiveWP – Donation Plugin and Fundraising Platform v2.24.2
4.16.8 4.16.7.2 4.16.7.1 4.16.7 4.16.6.1 4.16.6 4.16.5.1 4.16.5 4.16.4 4.16.3 4.16.2 4.16.1 4.16.0 4.15.5 4.15.4 4.15.3 4.15.2 4.15.1 4.15.0 2.3.0 2.3.1 2.3.2 2.30.0 2.31.0 2.31.1 All 253 releases
give / vendor / fakerphp / faker / src / Faker / Provider / pt_PT / Person.php
Person.php
147 lines 6.5 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 <?php
2
3 namespace Faker\Provider\pt_PT;
4
5 class Person extends \Faker\Provider\Person
6 {
7 protected static $maleNameFormats = array(
8 '{{firstNameMale}} {{lastName}}',
9 '{{firstNameMale}} {{lastName}} {{lastName}}',
10 '{{firstNameMale}} {{lastName}} de {{lastName}}',
11 '{{firstNameMale}} {{firstNameMale}} {{lastName}}',
12 '{{firstNameMale}} {{firstNameMale}} de {{lastName}}',
13 '{{firstNameMale}} {{firstNameMale}} {{lastName}} {{lastName}}',
14 '{{firstNameMale}} {{firstNameMale}} {{lastName}} de {{lastName}}',
15 '{{firstNameMale}} {{firstNameMale}} {{lastName}} {{lastName}} {{lastName}}',
16 );
17
18 protected static $femaleNameFormats = array(
19 '{{firstNameFemale}} {{lastName}}',
20 '{{firstNameFemale}} {{lastName}} {{lastName}}',
21 '{{firstNameFemale}} {{lastName}} de {{lastName}}',
22 '{{firstNameFemale}} {{firstNameFemale}} {{lastName}}',
23 '{{firstNameFemale}} {{firstNameFemale}} de {{lastName}}',
24 '{{firstNameFemale}} {{firstNameFemale}} {{lastName}} {{lastName}}',
25 '{{firstNameFemale}} {{firstNameFemale}} {{lastName}} de {{lastName}}',
26 '{{firstNameFemale}} {{firstNameFemale}} {{lastName}} {{lastName}} {{lastName}}',
27 );
28
29 /** @link http://goo.gl/v6bScG document with all pt abreviations **/
30 protected static $titleMale = array('Sr.', 'Dr.', 'Exmo.', 'Eng.', 'Eng.º', 'Ex.', 'Exº');
31 protected static $titleFemale = array('Sra.', 'Dra.', 'Exma', 'Eng.ª', 'Exª');
32
33 protected static $firstEightDigitsFormat = array(
34 '1#######',
35 '2#######',
36 '3#######',
37 '45######',
38 '5#######',
39 '6#######',
40 '70######',
41 '71######',
42 '72######',
43 '77######',
44 '79######',
45 '8#######' ,
46 '90######',
47 '98######',
48 '99######'
49 );
50
51 /**
52 * Taxpayer Identification Number (NIF in Portugal)
53 *
54 * @link http://pt.wikipedia.org/wiki/N%C3%BAmero_de_identifica%C3%A7%C3%A3o_fiscal
55 *
56 * @return string 9 digit number
57 */
58 public static function taxpayerIdentificationNumber()
59 {
60 $firstEightDigits = static::numerify(static::randomElement(static::$firstEightDigitsFormat));
61 $lastDigit = static::dvCalcMod11($firstEightDigits);
62
63 return $firstEightDigits.$lastDigit;
64 }
65
66 /**
67 * Generate module
68 *
69 * @link http://pt.wikipedia.org/wiki/D%C3%ADgito_verificador
70 *
71 * @param string $number number
72 *
73 * @return int
74 */
75 public static function dvCalcMod11($number)
76 {
77 $base = 9;
78 $sum = 0;
79 $factor = 2;
80
81 for ($i = strlen($number); $i > 0; $i--) {
82 $numbers[$i] = substr($number, $i - 1, 1);
83 $partial[$i] = $numbers[$i] * $factor;
84 $sum += $partial[$i];
85 if ($factor == $base) {
86 $factor = 1;
87 }
88 $factor++;
89 }
90 $res = $sum % 11;
91
92 if ($res == 0 || $res == 1) {
93 $digit = 0;
94 } else {
95 $digit = 11 - $res;
96 }
97
98 return $digit;
99 }
100
101 /**
102 *
103 * @link http://nomesportugueses.blogspot.pt/2012/01/lista-dos-cem-nomes-mais-usados-em.html
104 */
105
106 protected static $firstNameMale = array(
107 'Rodrigo', 'João', 'Martim', 'Afonso', 'Tomás', 'Gonçalo', 'Francisco', 'Tiago',
108 'Diogo', 'Guilherme', 'Pedro', 'Miguel', 'Rafael', 'Gabriel', 'Santiago', 'Dinis',
109 'David', 'Duarte', 'José', 'Simão', 'Daniel', 'Lucas', 'Gustavo', 'André', 'Denis',
110 'Salvador', 'António', 'Vasco', 'Henrique', 'Lourenço', 'Manuel', 'Eduardo', 'Bernardo',
111 'Leandro', 'Luís', 'Diego', 'Leonardo', 'Alexandre', 'Rúben', 'Mateus', 'Ricardo',
112 'Vicente', 'Filipe', 'Bruno', 'Nuno', 'Carlos', 'Rui', 'Hugo', 'Samuel', 'Álvaro',
113 'Matias', 'Fábio', 'Ivo', 'Paulo', 'Jorge', 'Xavier', 'Marco', 'Isaac', 'Raúl','Benjamim',
114 'Renato', 'Artur', 'Mário', 'Frederico', 'Cristiano', 'Ivan', 'Sérgio', 'Micael',
115 'Vítor', 'Edgar', 'Kevin', 'Joaquim', 'Igor', 'Ângelo', 'Enzo', 'Valentim', 'Flávio',
116 'Joel', 'Fernando', 'Sebastião', 'Tomé', 'César', 'Cláudio', 'Nelson', 'Lisandro', 'Jaime',
117 'Gil', 'Mauro', 'Sandro', 'Hélder', 'Matheus', 'William', 'Gaspar', 'Márcio',
118 'Martinho', 'Emanuel', 'Marcos', 'Telmo', 'Davi', 'Wilson'
119 );
120
121 protected static $firstNameFemale = array(
122 'Maria', 'Leonor', 'Matilde', 'Mariana', 'Ana', 'Beatriz', 'Inês', 'Lara', 'Carolina', 'Margarida',
123 'Joana', 'Sofia', 'Diana', 'Francisca', 'Laura', 'Sara', 'Madalena', 'Rita', 'Mafalda', 'Catarina',
124 'Luana', 'Marta', 'Íris', 'Alice', 'Bianca', 'Constança', 'Gabriela', 'Eva', 'Clara', 'Bruna', 'Daniela',
125 'Iara', 'Filipa', 'Vitória', 'Ariana', 'Letícia', 'Bárbara', 'Camila', 'Rafaela', 'Carlota', 'Yara',
126 'Núria', 'Raquel', 'Ema', 'Helena', 'Benedita', 'Érica', 'Isabel', 'Nicole', 'Lia', 'Alícia', 'Mara',
127 'Jéssica', 'Soraia', 'Júlia', 'Luna', 'Victória', 'Luísa', 'Teresa', 'Miriam', 'Adriana', 'Melissa',
128 'Andreia', 'Juliana', 'Alexandra', 'Yasmin', 'Tatiana', 'Leticia', 'Luciana', 'Eduarda', 'Cláudia',
129 'Débora', 'Fabiana', 'Renata', 'Kyara', 'Kelly', 'Irina', 'Mélanie', 'Nádia', 'Cristiana', 'Liliana',
130 'Patrícia', 'Vera', 'Doriana', 'Ângela', 'Mia', 'Erica', 'Mónica', 'Isabela', 'Salomé', 'Cátia',
131 'Verónica', 'Violeta', 'Lorena', 'Érika', 'Vanessa', 'Iris', 'Anna', 'Viviane', 'Rebeca', 'Neuza',
132 );
133
134 protected static $lastName = array(
135 'Abreu', 'Almeida', 'Alves', 'Amaral', 'Amorim', 'Andrade', 'Anjos', 'Antunes', 'Araújo', 'Assunção',
136 'Azevedo', 'Baptista', 'Barbosa', 'Barros', 'Batista', 'Borges', 'Branco', 'Brito', 'Campos', 'Cardoso',
137 'Carneiro', 'Carvalho', 'Castro', 'Coelho', 'Correia', 'Costa', 'Cruz', 'Cunha', 'Domingues', 'Esteves',
138 'Faria', 'Fernandes', 'Ferreira', 'Figueiredo', 'Fonseca', 'Freitas', 'Garcia', 'Gaspar', 'Gomes',
139 'Gonçalves', 'Guerreiro', 'Henriques', 'Jesus', 'Leal', 'Leite', 'Lima', 'Lopes', 'Loureiro', 'Lourenço',
140 'Macedo', 'Machado', 'Magalhães', 'Maia', 'Marques', 'Martins', 'Matias', 'Matos', 'Melo', 'Mendes',
141 'Miranda', 'Monteiro', 'Morais', 'Moreira', 'Mota', 'Moura', 'Nascimento', 'Neto', 'Neves', 'Nogueira',
142 'Nunes', 'Oliveira', 'Pacheco', 'Paiva', 'Pereira', 'Pinheiro', 'Pinho', 'Pinto', 'Pires', 'Ramos',
143 'Reis', 'Ribeiro', 'Rocha', 'Rodrigues', 'Santos', 'Silva', 'Simões', 'Soares', 'Sousa',
144 '', 'Tavares', 'Teixeira', 'Torres', 'Valente', 'Vaz', 'Vicente', 'Vieira',
145 );
146 }
147