> CopixActionReturn__CONTENT
fr

Présentation

Le code retour CopixActionReturn::CONTENT sert à demander à Copix de télécharger un contenu vers le poste client.

Ce code est pratique lorsque le contenu est généré à la volée et que vous ne souhaitez pas le conserver sur le serveur.

Exemple :



return _arContent ($generateurDeFichier->generate ($data, 'zip'));
//ou avec la syntaxe complète
return new CopixActionReturn (CopixActionReturn::CONTENT, $generateurDeFichier->generate ($data, 'zip'));
 

Options supplémentaires

Il est possible de spécifier des options supplémentaires lorsque l'on demande le téléchargement de contenu, soit :

Les options sont passées sous la forme d'un tableau associatif.

Disposition du fichier

Cette option peut prendre deux valeurs :

Exemple :


   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('content-disposition'=>'attachement'));

   //et avec inline
   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('content-disposition'=>'inline'));
 

Spécifier un nom de fichier

Cette option permet d'indiquer au navigateur quel sera le nom du fichier à télécharger. Cela évite que le fichier à télécharger prenne le nom du script php qui génère le contenu.

Exemple :


   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('filename'=>'archive.zip'));
 

Spécifier le type MIME du fichier

Cette option permet d'indiquer le type du contenu que nous somme en train d'envoyer au navigateur.

Si rien n'est spécifié et qu'aucun nom de fichier (filename) n'a été spécifié, le type sera "application/octet-stream". Si rien n'est spécifié et qu'un nom de fichier à été donné, le type sera déterminé en fonction de l'extension. Sinon, le type sera celui spécifié.

Exemples :


   //Le type MIME sera application/octet-stream car on ne sait pas comment le déterminer
   return _arContent ($generateurDeFichier->generate ($data, 'zip'));
   //Le type MIME sera celui du zip grâce au nom du fichier
   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('filename'=>'archive.zip'));
   //le type MIME sera celui du zip car on le spécifie explicitement
   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('content-type'=>CopixMIMETypes::getFromExtension ('.zip'))));
 

Note Ici, on utilise CopixMIMETypes pour récupérer le type MIME du fichier. CopixMIMETypes prend en charge la plupart des formats connus.

Note Le type du fichier est la seule option qui n'a pas besoin d'être passée sous la forme de tableau, ainsi vous pouvez écrire :


   return _arContent ($generateurDeFichier->generate ($data, 'zip'), CopixMIMETypes::getFromExtension ('.zip')));
 

Mode de transfert

Cette option permet de spécifier au navigateur comment transférer le contenu que l'on lui envoie.

Par défaut, Copix utilise "binary".

Exemple:


   return _arContent ($generateurDeFichier->generate ($data, 'zip'), array ('content-transfer-encoding'=>'binary')));