PhoneNumber.php
2.7 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
<?php
namespace Faker\Provider\en_SG;
class PhoneNumber extends \Faker\Provider\PhoneNumber
{
protected static $internationalCodePrefix = [
'+65',
'65',
];
protected static $zeroToEight = [0, 1, 2, 3, 4, 5, 6, 7, 8];
protected static $oneToEight = [1, 2, 3, 4, 5, 6, 7, 8];
protected static $mobileNumberFormats = [
'{{internationalCodePrefix}}9{{zeroToEight}}## ####',
'{{internationalCodePrefix}} 9{{zeroToEight}}## ####',
'9{{zeroToEight}}## ####',
'{{internationalCodePrefix}}8{{oneToEight}}## ####',
'{{internationalCodePrefix}} 8{{oneToEight}}## ####',
'8{{oneToEight}}## ####',
];
protected static $fixedLineNumberFormats = [
'{{internationalCodePrefix}}6### ####',
'{{internationalCodePrefix}} 6### ####',
'6### ####',
];
// http://en.wikipedia.org/wiki/Telephone_numbers_in_Singapore#Numbering_plan
protected static $formats = [
'{{mobileNumber}}',
'{{fixedLineNumber}}',
];
protected static $voipNumber = [
'{{internationalCodePrefix}}3### ####',
'{{internationalCodePrefix}} 3### ####',
'3### ####',
];
protected static $tollFreeInternationalNumber = [
'800 ### ####',
];
protected static $tollFreeLineNumber = [
'1800 ### ####',
];
protected static $premiumPhoneNumber = [
'1900 ### ####',
];
public function tollFreeInternationalNumber()
{
return static::numerify(static::randomElement(static::$tollFreeInternationalNumber));
}
public function tollFreeLineNumber()
{
return static::numerify(static::randomElement(static::$tollFreeLineNumber));
}
public function premiumPhoneNumber()
{
return static::numerify(static::randomElement(static::$premiumPhoneNumber));
}
public function mobileNumber()
{
$format = static::randomElement(static::$mobileNumberFormats);
return static::numerify($this->generator->parse($format));
}
public function fixedLineNumber()
{
$format = static::randomElement(static::$fixedLineNumberFormats);
return static::numerify($this->generator->parse($format));
}
public function voipNumber()
{
$format = static::randomElement(static::$voipNumber);
return static::numerify($this->generator->parse($format));
}
public function internationalCodePrefix()
{
return static::randomElement(static::$internationalCodePrefix);
}
public function zeroToEight()
{
return static::randomElement(static::$zeroToEight);
}
public function oneToEight()
{
return static::randomElement(static::$oneToEight);
}
}