# Migration depuis les versions précédentes

Ce chapitre explique les cassures de compatibilités dans Zend_View, et devrait servir de guide de migration pour ce composant.

## Migrer depuis des versions inférieures à 1.7.5

Avant la version 1.7.5, l'équipe de Zend Framework a été avertie d'une faille potentielle d'inclusion de fichier local ("Local File Inclusion" (LFI)) dans la méthode `Zend_View::render()`. Avant 1.7.5, la méthode acceptait par défaut la possibilité de spécifier des scripts de vue comportant des indications de dossier parent (comme, "../" ou "..\"). Ceci ouvre la possibilité à une attaque LFI si des données utilisateurs non filtrées sont passées directement à la méthode `render()`:

    // Ici, $_GET['foobar'] = '../../../../etc/passwd'
    echo $view->render($_GET['foobar']); // inclusion LFI

`Zend_View` émet maintenant une exception dans un tel cas.

### Désactiver la protection LFI de render()

Comme des développeurs utilisaient de telles notations, mais qui n'étaient pas des données en provenance de l'extérieur, un drapeau spécial a été crée, il permet de désactiver la protection. Pour manipuler ce drapeau, il existe 2 moyens : le paramètre 'lfiProtectionOn' du constructeur de votre vue, ou encore la méthode `setLfiProtection()`.

    // Désactivation de la protection par le constructeur
    $view = new Zend_View(array('lfiProtectionOn' => false));

    // Désactivation de la protection par la méthode dédiée
    $view = new Zend_View();
    $view->setLfiProtection(false);