Address.php
5 years ago
Company.php
5 years ago
Internet.php
5 years ago
Payment.php
5 years ago
Person.php
5 years ago
PhoneNumber.php
5 years ago
Text.php
5 years ago
Address.php
140 lines
| 1 | <?php |
| 2 | |
| 3 | namespace Faker\Provider\it_CH; |
| 4 | |
| 5 | class Address extends \Faker\Provider\it_IT\Address |
| 6 | { |
| 7 | protected static $buildingNumber = array('###', '##', '#', '#a', '#b', '#c'); |
| 8 | |
| 9 | protected static $streetPrefix = array('Piazza', 'Strada', 'Via', 'Borgo', 'Contrada', 'Rotonda', 'Incrocio'); |
| 10 | |
| 11 | protected static $postcode = array('####'); |
| 12 | |
| 13 | /** |
| 14 | * @link https://it.wikipedia.org/wiki/Citt%C3%A0_svizzere |
| 15 | */ |
| 16 | protected static $cityNames = array( |
| 17 | 'Aarau', 'Adliswil', 'Aesch', 'Affoltern am Albis', 'Allschwil', 'Altstätten', 'Amriswil', 'Arbon', 'Arth', |
| 18 | 'Baar', 'Baden', 'Basilea', 'Bassersdorf', 'Bellinzona', 'Belp', 'Berna', 'Bienne', 'Binningen', 'Birsfelden', 'Briga-Glis', 'Brugg', 'Buchs', 'Bulle', 'Burgdorf', 'Bülach', |
| 19 | 'Carouge', 'Cham', 'Chêne-Bougeries', 'Coira', |
| 20 | 'Davos', 'Delémont', 'Dietikon', 'Dübendorf', 'Ebikon', |
| 21 | 'Ecublens', 'Einsiedeln', 'Emmen', |
| 22 | 'Frauenfeld', 'Freienbach', 'Friburgo', |
| 23 | 'Ginevra', 'Gland', 'Gossau', 'Grenchen', |
| 24 | 'Herisau', 'Hinwil', 'Horgen', 'Horw', |
| 25 | 'Illnau-Effretikon', 'Ittigen', |
| 26 | 'Kloten', 'Kreuzlingen', 'Kriens', 'Köniz', 'Küsnacht', 'Küssnacht', |
| 27 | 'La Chaux-de-Fonds', 'La Tour-de-Peilz', 'Lancy', 'Langenthal', 'Le Grand-Saconnex', 'Le Locle', 'Liestal', 'Locarno', 'Losanna', 'Lucerna', 'Lugano', 'Lyss', |
| 28 | 'Martigny', 'Meilen', 'Mendrisio', 'Meyrin', 'Monthey', 'Montreux', 'Morges', 'Muri bei Bern', 'Muttenz', 'Männedorf', 'Möhlin', 'Münchenstein', 'Münsingen', |
| 29 | 'Neuchâtel', 'Neuhausen am Rheinfall', 'Nyon', |
| 30 | 'Oberwil', 'Oftringen', 'Olten', 'Onex', 'Opfikon', 'Ostermundigen', |
| 31 | 'Pfäffikon', 'Pratteln', 'Prilly', 'Pully', |
| 32 | 'Rapperswil-Jona', 'Regensdorf', 'Reinach', 'Renens', 'Rheinfelden', 'Richterswil', 'Riehen', 'Rüti', |
| 33 | 'San Gallo', 'Schlieren', 'Sciaffusa', 'Sierre', 'Sion', 'Soletta', 'Spiez', 'Spreitenbach', 'Steffisburg', 'Stäfa', 'Svitto', |
| 34 | 'Thalwil', 'Thun', 'Thônex', |
| 35 | 'Uster', 'Uzwil', |
| 36 | 'Val-de-Travers', 'Vernier', 'Versoix', 'Vevey', 'Veyrier', 'Villars-sur-Glâne', 'Volketswil', |
| 37 | 'Wallisellen', 'Weinfelden', 'Wettingen', 'Wetzikon', 'Wil', 'Winterthur', 'Wohlen', 'Worb', 'Wädenswil', |
| 38 | 'Yverdon-les-Bains', |
| 39 | 'Zofingen', 'Zollikon', 'Zugo', 'Zurigo' |
| 40 | ); |
| 41 | |
| 42 | /** |
| 43 | * @link https://it.wikipedia.org/wiki/Cantoni_della_Svizzera |
| 44 | */ |
| 45 | protected static $canton = array( |
| 46 | array('AG' => 'Argovia'), |
| 47 | array('AI' => 'Appenzello Interno'), |
| 48 | array('AR' => 'Appenzello Esterno'), |
| 49 | array('BE' => 'Berna'), |
| 50 | array('BL' => 'Basilea Campagna'), |
| 51 | array('BS' => 'Basilea Città'), |
| 52 | array('FR' => 'Friburgo'), |
| 53 | array('GE' => 'Ginevra'), |
| 54 | array('GL' => 'Glarona'), |
| 55 | array('GR' => 'Grigioni'), |
| 56 | array('JU' => 'Giura'), |
| 57 | array('LU' => 'Lucerna'), |
| 58 | array('NE' => 'Neuchâtel'), |
| 59 | array('NW' => 'Nidvaldo'), |
| 60 | array('OW' => 'Obvaldo'), |
| 61 | array('SG' => 'San Gallo'), |
| 62 | array('SH' => 'Sciaffusa'), |
| 63 | array('SO' => 'Soletta'), |
| 64 | array('SZ' => 'Svitto'), |
| 65 | array('TG' => 'Turgovia'), |
| 66 | array('TI' => 'Ticino'), |
| 67 | array('UR' => 'Uri'), |
| 68 | array('VD' => 'Vaud'), |
| 69 | array('VS' => 'Vallese'), |
| 70 | array('ZG' => 'Zugo'), |
| 71 | array('ZH' => 'Zurigo') |
| 72 | ); |
| 73 | |
| 74 | protected static $cityFormats = array( |
| 75 | '{{cityName}}', |
| 76 | ); |
| 77 | |
| 78 | protected static $streetNameFormats = array( |
| 79 | '{{streetSuffix}} {{firstName}}', |
| 80 | '{{streetSuffix}} {{lastName}}' |
| 81 | ); |
| 82 | |
| 83 | protected static $streetAddressFormats = array( |
| 84 | '{{streetName}} {{buildingNumber}}', |
| 85 | ); |
| 86 | protected static $addressFormats = array( |
| 87 | "{{streetAddress}}\n{{postcode}} {{city}}", |
| 88 | ); |
| 89 | |
| 90 | /** |
| 91 | * Returns a random street prefix |
| 92 | * @example Via |
| 93 | * @return string |
| 94 | */ |
| 95 | public static function streetPrefix() |
| 96 | { |
| 97 | return static::randomElement(static::$streetPrefix); |
| 98 | } |
| 99 | |
| 100 | /** |
| 101 | * Returns a random city name. |
| 102 | * @example Luzern |
| 103 | * @return string |
| 104 | */ |
| 105 | public function cityName() |
| 106 | { |
| 107 | return static::randomElement(static::$cityNames); |
| 108 | } |
| 109 | |
| 110 | /** |
| 111 | * Returns a canton |
| 112 | * @example array('BE' => 'Bern') |
| 113 | * @return array |
| 114 | */ |
| 115 | public static function canton() |
| 116 | { |
| 117 | return static::randomElement(static::$canton); |
| 118 | } |
| 119 | |
| 120 | /** |
| 121 | * Returns the abbreviation of a canton. |
| 122 | * @return string |
| 123 | */ |
| 124 | public static function cantonShort() |
| 125 | { |
| 126 | $canton = static::canton(); |
| 127 | return key($canton); |
| 128 | } |
| 129 | |
| 130 | /** |
| 131 | * Returns the name of canton. |
| 132 | * @return string |
| 133 | */ |
| 134 | public static function cantonName() |
| 135 | { |
| 136 | $canton = static::canton(); |
| 137 | return current($canton); |
| 138 | } |
| 139 | } |
| 140 |