ar_EG
1 year ago
ar_JO
1 year ago
ar_SA
1 year ago
at_AT
1 year ago
bg_BG
1 year ago
bn_BD
1 year ago
cs_CZ
1 year ago
da_DK
1 year ago
de_AT
1 year ago
de_CH
1 year ago
de_DE
1 year ago
el_CY
1 year ago
el_GR
1 year ago
en_AU
1 year ago
en_CA
1 year ago
en_GB
1 year ago
en_HK
1 year ago
en_IN
1 year ago
en_NG
1 year ago
en_NZ
1 year ago
en_PH
1 year ago
en_SG
1 year ago
en_UG
1 year ago
en_US
1 year ago
en_ZA
1 year ago
es_AR
1 year ago
es_ES
1 year ago
es_PE
1 year ago
es_VE
1 year ago
et_EE
1 year ago
fa_IR
1 year ago
fi_FI
1 year ago
fr_BE
1 year ago
fr_CA
1 year ago
fr_CH
1 year ago
fr_FR
1 year ago
he_IL
1 year ago
hr_HR
1 year ago
hu_HU
1 year ago
hy_AM
1 year ago
id_ID
1 year ago
is_IS
1 year ago
it_CH
1 year ago
it_IT
1 year ago
ja_JP
1 year ago
ka_GE
1 year ago
kk_KZ
1 year ago
ko_KR
1 year ago
lt_LT
1 year ago
lv_LV
1 year ago
me_ME
1 year ago
mn_MN
1 year ago
ms_MY
1 year ago
nb_NO
1 year ago
ne_NP
1 year ago
nl_BE
1 year ago
nl_NL
1 year ago
pl_PL
1 year ago
pt_BR
1 year ago
pt_PT
1 year ago
ro_MD
1 year ago
ro_RO
1 year ago
ru_RU
1 year ago
sk_SK
1 year ago
sl_SI
1 year ago
sr_Cyrl_RS
1 year ago
sr_Latn_RS
1 year ago
sr_RS
1 year ago
sv_SE
1 year ago
th_TH
1 year ago
tr_TR
1 year ago
uk_UA
1 year ago
vi_VN
1 year ago
zh_CN
1 year ago
zh_TW
1 year ago
Address.php
1 year ago
Barcode.php
1 year ago
Base.php
1 year ago
Biased.php
1 year ago
Color.php
1 year ago
Company.php
1 year ago
DateTime.php
1 year ago
File.php
1 year ago
HtmlLorem.php
1 year ago
Image.php
1 year ago
Internet.php
1 year ago
Lorem.php
1 year ago
Medical.php
1 year ago
Miscellaneous.php
1 year ago
Payment.php
1 year ago
Person.php
1 year ago
PhoneNumber.php
1 year ago
Text.php
1 year ago
UserAgent.php
1 year ago
Uuid.php
1 year ago
Address.php
173 lines
| 1 | <?php |
| 2 | /** |
| 3 | * @license MIT |
| 4 | * |
| 5 | * Modified by impress-org on 07-August-2024 using Strauss. |
| 6 | * @see https://github.com/BrianHenryIE/strauss |
| 7 | */ |
| 8 | |
| 9 | namespace Give\Vendors\Faker\Provider; |
| 10 | |
| 11 | class Address extends Base |
| 12 | { |
| 13 | protected static $citySuffix = ['Ville']; |
| 14 | protected static $streetSuffix = ['Street']; |
| 15 | protected static $cityFormats = [ |
| 16 | '{{firstName}}{{citySuffix}}', |
| 17 | ]; |
| 18 | protected static $streetNameFormats = [ |
| 19 | '{{lastName}} {{streetSuffix}}', |
| 20 | ]; |
| 21 | protected static $streetAddressFormats = [ |
| 22 | '{{buildingNumber}} {{streetName}}', |
| 23 | ]; |
| 24 | protected static $addressFormats = [ |
| 25 | '{{streetAddress}} {{postcode}} {{city}}', |
| 26 | ]; |
| 27 | |
| 28 | protected static $buildingNumber = ['%#']; |
| 29 | protected static $postcode = ['#####']; |
| 30 | protected static $country = []; |
| 31 | |
| 32 | /** |
| 33 | * @example 'town' |
| 34 | * |
| 35 | * @return string |
| 36 | */ |
| 37 | public static function citySuffix() |
| 38 | { |
| 39 | return static::randomElement(static::$citySuffix); |
| 40 | } |
| 41 | |
| 42 | /** |
| 43 | * @example 'Avenue' |
| 44 | * |
| 45 | * @return string |
| 46 | */ |
| 47 | public static function streetSuffix() |
| 48 | { |
| 49 | return static::randomElement(static::$streetSuffix); |
| 50 | } |
| 51 | |
| 52 | /** |
| 53 | * @example '791' |
| 54 | * |
| 55 | * @return string |
| 56 | */ |
| 57 | public static function buildingNumber() |
| 58 | { |
| 59 | return static::numerify(static::randomElement(static::$buildingNumber)); |
| 60 | } |
| 61 | |
| 62 | /** |
| 63 | * @example 'Sashabury' |
| 64 | * |
| 65 | * @return string |
| 66 | */ |
| 67 | public function city() |
| 68 | { |
| 69 | $format = static::randomElement(static::$cityFormats); |
| 70 | |
| 71 | return $this->generator->parse($format); |
| 72 | } |
| 73 | |
| 74 | /** |
| 75 | * @example 'Crist Parks' |
| 76 | * |
| 77 | * @return string |
| 78 | */ |
| 79 | public function streetName() |
| 80 | { |
| 81 | $format = static::randomElement(static::$streetNameFormats); |
| 82 | |
| 83 | return $this->generator->parse($format); |
| 84 | } |
| 85 | |
| 86 | /** |
| 87 | * @example '791 Crist Parks' |
| 88 | * |
| 89 | * @return string |
| 90 | */ |
| 91 | public function streetAddress() |
| 92 | { |
| 93 | $format = static::randomElement(static::$streetAddressFormats); |
| 94 | |
| 95 | return $this->generator->parse($format); |
| 96 | } |
| 97 | |
| 98 | /** |
| 99 | * @example 86039-9874 |
| 100 | * |
| 101 | * @return string |
| 102 | */ |
| 103 | public static function postcode() |
| 104 | { |
| 105 | return static::toUpper(static::bothify(static::randomElement(static::$postcode))); |
| 106 | } |
| 107 | |
| 108 | /** |
| 109 | * @example '791 Crist Parks, Sashabury, IL 86039-9874' |
| 110 | * |
| 111 | * @return string |
| 112 | */ |
| 113 | public function address() |
| 114 | { |
| 115 | $format = static::randomElement(static::$addressFormats); |
| 116 | |
| 117 | return $this->generator->parse($format); |
| 118 | } |
| 119 | |
| 120 | /** |
| 121 | * @example 'Japan' |
| 122 | * |
| 123 | * @return string |
| 124 | */ |
| 125 | public static function country() |
| 126 | { |
| 127 | return static::randomElement(static::$country); |
| 128 | } |
| 129 | |
| 130 | /** |
| 131 | * Uses signed degrees format (returns a float number between -90 and 90) |
| 132 | * |
| 133 | * @example '77.147489' |
| 134 | * |
| 135 | * @param float|int $min |
| 136 | * @param float|int $max |
| 137 | * |
| 138 | * @return float |
| 139 | */ |
| 140 | public static function latitude($min = -90, $max = 90) |
| 141 | { |
| 142 | return static::randomFloat(6, $min, $max); |
| 143 | } |
| 144 | |
| 145 | /** |
| 146 | * Uses signed degrees format (returns a float number between -180 and 180) |
| 147 | * |
| 148 | * @example '86.211205' |
| 149 | * |
| 150 | * @param float|int $min |
| 151 | * @param float|int $max |
| 152 | * |
| 153 | * @return float |
| 154 | */ |
| 155 | public static function longitude($min = -180, $max = 180) |
| 156 | { |
| 157 | return static::randomFloat(6, $min, $max); |
| 158 | } |
| 159 | |
| 160 | /** |
| 161 | * @example array('77.147489', '86.211205') |
| 162 | * |
| 163 | * @return float[] |
| 164 | */ |
| 165 | public static function localCoordinates() |
| 166 | { |
| 167 | return [ |
| 168 | 'latitude' => static::latitude(), |
| 169 | 'longitude' => static::longitude(), |
| 170 | ]; |
| 171 | } |
| 172 | } |
| 173 |