Comment supprimer l'encodage de nomenclature des fichiers CSV en PHP ?

Mary-Kate Olsen
Libérer: 2024-11-04 15:39:02
original
798 Les gens l'ont consulté

How to Remove BOM Encoding from CSV Files in PHP?

Suppression de la nomenclature () du fichier .csv importé

Lors de l'importation de fichiers .csv, la présence d'une marque d'ordre d'octet (BOM) peut entraîner des problèmes d'encodage . Voici une solution complète pour supprimer la nomenclature des fichiers .csv importés :

Problème :

J'ai du mal à supprimer la nomenclature à l'aide de preg_replace ou str_replace.

Tentative de code :

<code class="php">$filepath = get_bloginfo('template_directory')."/testing.csv";
// ...
$file = fopen($filepath, "r") or die("Error opening file");
// ...</code>
Copier après la connexion

Solution :

  1. Utilisez les fonctions file_get_contents() et file_put_contents() pour lire et écraser le fichier avec la nomenclature supprimée :
<code class="php">// Read the file contents
$content = file_get_contents($filepath);

// Remove the BOM
$content = str_replace("\xEF\xBB\xBF",'', $content);

// Overwrite the file with the updated content
file_put_contents($filepath, $content);</code>
Copier après la connexion
  1. Utilisez une fonction personnalisée pour détecter et supprimer la nomenclature :
<code class="php">function removeBomUtf8($s){
  if(substr($s,0,3)==chr(hexdec('EF')).chr(hexdec('BB')).chr(hexdec('BF'))){
       return substr($s,3);
   }else{
       return $s;
   }
}</code>
Copier après la connexion
  1. Rouvrez le fichier et traitez-le comme avant.

Remarque :

La fonction FILE_PUT_CONTENTS ferme automatiquement le fichier, il n'est donc pas nécessaire de le fermer manuellement avec fclose().

En mettant en œuvre ces solutions, vous pouvez supprimer avec succès la nomenclature des fichiers .csv importés et garantir une analyse correcte des données.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!