Vue INI


1Présentation

La vue INI permet d'envoyer des fichiers INI constitués à partir de données PHP.

Par défaut, il s'agit d'un simple flux (comme pour la vue JSON) mais, de manière optionnelle, il est possible de spécifier un nom de fichier. Le flux au format INI sera alors envoyé au navigateur avec des instructions l'incitant à le traiter comme une pièce-jointe et à proposer à l'utilisateur de l'enregistrer sur le disque avec le nom de fichier en question.

2Utilisation

Voici un exemple de d'envoi de données au format INI :

class ApiController extends \Temma\Web\Controller {
    public function getUsers() {
        // enregistrement des données qui vont être
        // envoyées dans le flux INI
        $this['data'] = [
            'user1' => [
                'name' => 'Alice',
                'age'  => 28,
            ],
            'user2' => [
                'name' => 'Bob',
                'age'  => 54,
            ],
        ];
        // définition du nom du fichier (optionnel)
        $this['filename'] = 'userlist.ini';

        // définition de la vue à utiliser
        $this->_view('\Temma\Views\Ini');
    }
}
  • Lignes 5 à 14 : Les données à envoyer dans le flux INI sont définies en les affectant à la variable data.
  • Ligne 16 : On définit le nom du fichier INI (pour qu'il soit traité comme une pièce-jointe) en l'assignant à la variable filename. Ce paramètre est optionnel.
  • Ligne 19 : On spécifie que la vue à utiliser pour les données sortantes est la vue INI (et non pas la vue Smarty habituelle).

À noter : La vue INI n'a évidemment pas besoin de templates, dans la mesure où ce sont les données PHP qui sont directement sérialisées.

Les données reçues ressembleront à cela :

[user1]
"name"="Alice"
"age"=28
[user2]
"name"="Bob"
"age"=5