zendframework/zf2 — pull request #4645 by localheinz (2013-06-12 23:07:56+00:00)
Title: Update German example numbers in PhoneNumber validator test

I've just had a look at the `PhoneNumber` validator and wondered why with the following settings:

```php
$this->add(array(
'name' => 'telephone',
'required' => false,
'validators' => array(
array(
'name' => 'Zend\I18n\Validator\PhoneNumber',
'options' => array(
'country' => 'DE',
'allowed_types' => array(
'fixed',
),
),
),
),
);
```

it successfully validated the following numbers:

* `+441711234567`

I had a look at the test and updated the `phones` array for German phone numbers. Maybe I didn't understand it correctly how it is supposed to work (given that there is no documentation, only tests for it), but as far as I'm concerned, if you want to dial a number within Germany - other than `emergency` or `shortcode` numbers - you have to prefix them with `0` (unless you're dialing a number in the same city).

The test fails now, of course.

Debugging, I realized that the corresponding regular expression for `fixed` numbers

```
/^[246]\d{5,13}|3(?:[03-9]\d{4,13}|2\d{9})|5(?:0[2-8]|[1256]\d|[38][0-8]|4\d{0,2}|[79][0-7])\d{3,11}|7(?:0[2-8]|[1-9]\d)\d{3,10}|8(?:0[2-9]|[1-9]\d)\d{3,10}|9(?:0[6-9]|[1-9]\d)\d{3,10}$/
```
matches

* +441711234567 - (it's a UK landline number, it shouldn't match)
* 0171234567890 - (it's a DE mobile number, it shouldn't match)

@mwillbanks, can you have a look?