Address.php 2.14 KB
Newer Older
jiangbowen's avatar
jiangbowen committed
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
<?php

namespace Faker\Provider\en_NZ;

class Address extends \Faker\Provider\en_US\Address
{

    /**
     * An array of en_NZ (New Zealand) building number formats
     * @var array
     */
    protected static $buildingNumber = array('#', '##', '###');

    /**
     * An array of en_NZ (New Zealand) street suffixes
     * @var array
     */
    protected static $streetSuffix = array(
        'Avenue', 'Close', 'Court', 'Crescent', 'Drive', 'Esplanade', 'Grove', 'Heights', 'Highway', 'Hill', 'Lane', 'Line', 'Mall', 'Parade', 'Place', 'Quay', 'Rise', 'Road', 'Square', 'Street', 'Terrace', 'Way'
    );

    /**
     * City suffixes
     * @var array
     */
    protected static $citySuffix = array('ville', 'ston');

    /**
     * City formats
     * @var array
     */
    protected static $cityFormats = array('{{firstName}}{{citySuffix}}');

    /**
     * An array of en_NZ (New Zealand) regions
     * @see http://en.wikipedia.org/wiki/Regions_of_New_Zealand
     * @var array
     */
    protected static $region = array(
        'Auckland', 'Bay of Plenty', 'Canterbury', 'Gisborne', 'Hawkes Bay', 'Manawatu-Whanganui', 'Marlborough', 'Nelson', 'Northland', 'Otago', 'Southland', 'Taranaki', 'Tasman', 'Waikato', 'Wellington', 'West Coast'
    );

    /**
     * An array of en_NZ (New Zealand) poscode formats
     * @var array
     */
    protected static $postcode = array('####');

    /**
     * An array of en_NZ (New Zealand) address formats
     * @var array
     */
    protected static $addressFormats = array('{{buildingNumber}} {{streetName}}, {{city}}, {{region}}, {{postcode}}');

    /**
     * An array of en_NZ (New Zealand) street address formats
     * @var array
     */
    protected static $streetAddressFormats = array('{{buildingNumber}} {{streetName}}');

    /**
     * Return a en_NZ (New Zealand) postcode
     * @return string
     */
    public static function postcode()
    {
        return static::numerify(static::randomElement(static::$postcode));
    }

    /**
     * Return a en_NZ (New Zealand) region
     * @return string
     */
    public static function region()
    {
        return static::randomElement(static::$region);
    }
}