Que dois-je faire si le fichier de téléchargement php ne peut pas être ouvert ?

PHPz
Libérer: 2023-03-05 21:54:01
original
3043 Les gens l'ont consulté

Solutions au problème selon lequel les fichiers téléchargés PHP ne peuvent pas être ouverts : 1. Annulez la sortie de toute information non liée au fichier pendant le processus de téléchargement ; 2. Enregistrez le format du fichier de sortie et le nom du suffixe de manière cohérente.

Que dois-je faire si le fichier de téléchargement php ne peut pas être ouvert ?

Recommandé : "Tutoriel vidéo PHP"

php télécharger un fichier Excel,

1. Ne produisez aucune information autre qu'un fichier pendant le processus de téléchargement, telle que les informations du journal d'écho. Sinon, le fichier téléchargé ne pourra pas être ouvert, ce qui entraînera une erreur de format ou le fichier sera endommagé.

2. Le format Excel de sortie doit être enregistré avec le nom du suffixe, sinon cela provoquera une erreur de format ou le fichier est endommagé

Le code est le suivant :

if (file_exists(CACHE_PATH . $file_name)){
            //$this->logger->error('file realpath:'.realpath(CACHE_PATH . $file_name));
      header( 'Pragma: public' );
      header( 'Expires: 0' );
      header( 'Content-Encoding: none' );
      header( 'Cache-Control: must-revalidate, post-check=0, pre-check=0' );
      header( 'Cache-Control: public' );
   header( 'Content-Type: application/vnd.ms-excel'); 
      header( 'Content-Description: File Transfer' );
      header( 'Content-Disposition: attachment; filename=' . $file_name );
      header( 'Content-Transfer-Encoding: binary' );
      header( 'Content-Length: ' . filesize ( CACHE_PATH . $file_name ) );
      readfile ( CACHE_PATH . $file_name );
  } else {
   $this->logger->error('export model :'.$id.' 错误:未生产文件');
      echo &#39;<script>alert(\&#39;export error, file not exists!\&#39;)</script>&#39;;
  }
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
php
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal