# Ip

`Zend_Validate_Ip` permet de déterminer si une adresse IP donnée est valide. Le composant supporte IPv4 et IPv6.

## Utilisation classique

Voici un exemple banal:

    $validator = new Zend_Validate_Ip();
    if ($validator->isValid($ip)) {
        // ip semble valide
    } else {
        // ip n'est pas valide
    }

### adresses IP invalides

`Zend_Validate_Ip` ne valide que des adresses IP. 'mydomain.com' ou '192.168.50.1/index.html' ne sont donc pas des adresses IP valides. Ce sont des noms de domaines ou des URLs mais pas des adresses IP.

### Validation IPv6

`Zend_Validate_Ip` valides les adresses IPv6 au moyen d'expressions régulières. La raison est que les fonctions fournies par PHP ne suivent pas le RFC. Beaucoup d'autres classes disponibles font de même.

## Valider IPv4 ou IPV6 seules

Il peut arriver de ne vouloir valider qu'un seul des deux formats. Par exemple si le réseau ne supporte pas IPv6, il serait idiot de demander une telle validation.

Pour limiter `Zend_Validate_Ip` sur un seul des deux protocoles, utilisez les options allowipv4 ou allowipv6 et mettez les à `FALSE`. Il est possible d'effectuer celà au moyen du constructeur ou avec la méthode `setOptions()`.

    $validator = new Zend_Validate_Ip(array('allowipv6' => false);
    if ($validator->isValid($ip)) {
        // ip semble être une IPv4 valide
    } else {
        // ip n'est pas une adresse IPv4
    }

### Comportement par défaut

Le comportement par défaut de `Zend_Validate_Ip` est de valider les deux standards.