PhoneNumber.php
2.89 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
106
107
108
109
110
<?php
namespace Faker\Provider\en_SG;
class PhoneNumber extends \Faker\Provider\PhoneNumber
{
protected static $internationalCodePrefix = array(
'+65',
'65',
);
protected static $zeroToEight = array(0, 1, 2, 3, 4, 5, 6, 7, 8);
protected static $oneToNine = array(1, 2, 3, 4, 5, 6, 7, 8, 9);
protected static $mobileNumberFormats = array(
'{{internationalCodePrefix}}9{{zeroToEight}}## ####',
'{{internationalCodePrefix}} 9{{zeroToEight}}## ####',
'9{{zeroToEight}}## ####',
'{{internationalCodePrefix}}8{{oneToNine}}## ####',
'{{internationalCodePrefix}} 8{{oneToNine}}## ####',
'8{{oneToNine}}## ####',
'{{internationalCodePrefix}}7{{oneToNine}}## ####',
'{{internationalCodePrefix}} 7{{oneToNine}}## ####',
'7{{oneToNine}}## ####',
);
protected static $fixedLineNumberFormats = array(
'{{internationalCodePrefix}}6### ####',
'{{internationalCodePrefix}} 6### ####',
'6### ####',
);
// http://en.wikipedia.org/wiki/Telephone_numbers_in_Singapore#Numbering_plan
protected static $formats = array(
'{{mobileNumber}}',
'{{fixedLineNumber}}',
);
protected static $voipNumber = array(
'{{internationalCodePrefix}}3### ####',
'{{internationalCodePrefix}} 3### ####',
'3### ####',
);
protected static $tollFreeInternationalNumber = array(
'800 ### ####'
);
protected static $tollFreeLineNumber = array(
'1800 ### ####'
);
protected static $premiumPhoneNumber = array(
'1900 ### ####'
);
public function tollFreeInternationalNumber()
{
return static::randomElement(static::$tollFreeInternationalNumber);
}
public function tollFreeLineNumber()
{
return static::randomElement(static::$tollFreeLineNumber);
}
public function premiumPhoneNumber()
{
return 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 $this->generator->parse($format);
}
public function internationalCodePrefix()
{
$format = static::randomElement(static::$internationalCodePrefix);
return $this->generator->parse($format);
}
public function zeroToEight()
{
return static::randomElement(static::$zeroToEight);
}
public function oneToNine()
{
return static::randomElement(static::$oneToNine);
}
}