Valider 4a3eb053 rédigé par BoOz's avatar BoOz
Parcourir les fichiers

On peut avoir un fichier séparé par des tabs qui inclue des champs textuels...

On peut avoir un fichier séparé par des tabs qui inclue des champs textuels comprenant un grand nombre de virgules. Pour ne pas se tromper de séparateur, on divise le nb de virgules par 10 (au pif). On pourrait aussi décider de mettre if( > 0) peut-être...
parent a3f42c1b
Chargement en cours
Chargement en cours
Chargement en cours
Chargement en cours
+6 −3
Numéro de ligne d'origine Numéro de ligne de diff Ligne de diff
@@ -3,7 +3,7 @@
/***************************************************************************\
 *  SPIP, Systeme de publication pour l'internet                           *
 *                                                                         *
 *  Copyright (c) 2001-2018                                                *
 *  Copyright (c) 2001-2017                                                *
 *  Arnaud Martin, Antoine Pitrou, Philippe Riviere, Emmanuel Saint-James  *
 *                                                                         *
 *  Ce programme est un logiciel libre distribue sous licence GNU/GPL.     *
@@ -32,6 +32,8 @@ if (!defined('_ECRIRE_INC_VERSION')) {
 *     - Titre du tableau (si une seule colonne)
 **/
function analyse_csv($t) {
	
	// Quel est le séparateur ?
	$virg = substr_count($t, ',');
	$pvirg = substr_count($t, ';');
	$tab = substr_count($t, "\t");
@@ -43,7 +45,8 @@ function analyse_csv($t) {
		$hs = '&#59;';
		$virg = $pvirg;
	}
	if ($tab > $virg) {
	// un certain nombre de tab => le séparateur est tab
	if ($tab > $virg / 10) {
		$sep = "\t";
		$hs = "\t";
	}