2010-07-23 6 views
1

Tous,Comment faire pour supprimer les en-têtes dans un tableau

J'ai une application PHP qui semble générer les en-têtes suivants dans un tableau. Je souhaite supprimer ces en-têtes, afin que je puisse en définir de nouveaux comme celui d'un téléchargement pdf.

array(2) { 
    [0]=> 
    string(23) "X-Powered-By: PHP/5.3.1" 
    [1]=> 
    string(23) "Content-type: text/html" 
} 

Comment puis-je faire cela, car cela ne semble pas fonctionner:

var_dump(headers_list()); 

header_remove("X-Powered-By"); 
header_remove("Content-type"); 

var_dump(headers_list()); 

Répondre

1

Je pense que les lignes peuvent faire la même chose que vous voulez faire exactement.

header("Content-type: application/pdf"); 
header('Content-Disposition: attachment; filename="sample.pdf"'); 
readfile('/var/www/sample.pdf'); 

Merci

+0

Cela semble fonctionner, mais au lieu de demander à l'utilisateur d'enregistrer le fichier, il imprime le contenu PDF dans le navigateur. Comment éviter cela? – Jake

0

Vous ne pouvez modifier les en-têtes, si aucune sortie n'a été envoyé au client encore. Ainsi, la fonction var_dump entraînera l'ignorance de header_remove (puisqu'elle envoie évidemment du texte au client).

Vous devriez aussi jeter un oeil sur les fonctions de mise en mémoire tampon de sortie: http://us3.php.net/outcontrol

Questions connexes