Line 166... |
Line 166... |
166 |
// +-------------------------------------------------------------------------------------------------------------------+
|
166 |
// +-------------------------------------------------------------------------------------------------------------------+
|
167 |
private function traiterFichierTaxref($fichier) {
|
167 |
private function traiterFichierTaxref($fichier) {
|
168 |
$donnees = array();
|
168 |
$donnees = array();
|
169 |
if (($pointeur = fopen($fichier, "r")) !== FALSE) {
|
169 |
if (($pointeur = fopen($fichier, "r")) !== FALSE) {
|
170 |
$this->noms_colonnes = fgetcsv($pointeur, 1000, chr(9));
|
170 |
$this->noms_colonnes = fgetcsv($pointeur, 1000, chr(9));
|
171 |
$num_nom = 0;
|
171 |
$num_nom = 0;//print_r($this->noms_colonnes);
|
172 |
while (($ligne = fgetcsv($pointeur, 1000, chr(9))) !== FALSE) {
|
172 |
while (($ligne = fgetcsv($pointeur, 1000, chr(9))) !== FALSE) {
|
173 |
$nombreChamps = count($ligne);
|
173 |
$nombreChamps = count($ligne);
|
174 |
$taxref[$ligne[0]] = $ligne;
|
174 |
$taxref[$ligne[0]] = $ligne;//print_r($ligne);
|
175 |
for ($c=0; $c < $nombreChamps; $c++) {
|
175 |
for ($c=0; $c < $nombreChamps; $c++) {
|
176 |
if (isset($this->correspondance_colonnes[$this->noms_colonnes[$c]])) {
|
176 |
if (isset($this->correspondance_colonnes[$this->noms_colonnes[$c]])) {
|
177 |
if (is_array($this->correspondance_colonnes[$this->noms_colonnes[$c]])) {
|
177 |
if (is_array($this->correspondance_colonnes[$this->noms_colonnes[$c]])) {
|
178 |
if ($this->noms_colonnes[$c] == 'LB_AUTEUR') {
|
178 |
if ($this->noms_colonnes[$c] == 'LB_AUTEUR') {
|
179 |
if (preg_match('/(.*), +([0-9]{4})/', utf8_encode($ligne[$c]), $matches) == 1) {
|
179 |
if (preg_match('/(.*), +([0-9]{4})/', utf8_encode($ligne[$c]), $matches) == 1) {
|
Line 204... |
Line 204... |
204 |
$nom_sci = $ligne[$c];
|
204 |
$nom_sci = $ligne[$c];
|
205 |
$nom[$this->correspondance_colonnes[$this->noms_colonnes[$c]]] =
|
205 |
$nom[$this->correspondance_colonnes[$this->noms_colonnes[$c]]] =
|
206 |
$this->correspondance_colonnes[$this->noms_colonnes[$c]].'="'.trim($ligne[$c]).'"';
|
206 |
$this->correspondance_colonnes[$this->noms_colonnes[$c]].'="'.trim($ligne[$c]).'"';
|
207 |
} else {
|
207 |
} else {
|
208 |
$nom[$this->correspondance_colonnes[$this->noms_colonnes[$c]]] =
|
208 |
$nom[$this->correspondance_colonnes[$this->noms_colonnes[$c]]] =
|
209 |
$this->correspondance_colonnes[$this->noms_colonnes[$c]].'="'.trim($ligne[$c]).'"';
|
209 |
$this->correspondance_colonnes[$this->noms_colonnes[$c]].'="'.trim(utf8_encode($ligne[$c])).'"';
|
210 |
}
|
210 |
}
|
211 |
}
|
211 |
}
|
212 |
}
|
212 |
}
|
213 |
}
|
213 |
}
|
214 |
$nom['exclure_taxref'] = 'exclure_taxref="0"';
|
214 |
$nom['exclure_taxref'] = 'exclure_taxref="0"';
|
Line 243... |
Line 243... |
243 |
} else {
|
243 |
} else {
|
244 |
Debug::printr($infos['CD_NOM']."n'a pas de valeur pour CD_REF");
|
244 |
Debug::printr($infos['CD_NOM']."n'a pas de valeur pour CD_REF");
|
245 |
}
|
245 |
}
|
246 |
unset($donnees[$num_nom]['CD_REF']);
|
246 |
unset($donnees[$num_nom]['CD_REF']);
|
247 |
$donnees[$num_nom]['CD_NOM'] = 'CD_NOM='.$donnees[$num_nom]['CD_NOM'];
|
247 |
$donnees[$num_nom]['CD_NOM'] = 'CD_NOM='.$donnees[$num_nom]['CD_NOM'];
|
248 |
}//echo "les taxons supérieurs manquants :".implode(" ,", $sup)." \nles retenus ".implode(" ,", $ref);
|
248 |
}echo "les ".count($sup)." taxons supérieurs manquants :".implode(" ,", $sup)." \nles "."retenus ".implode(" ,", $ref);
|
249 |
//$this->ecrireFichierCsv($ref, './retenu_absent.csv');
|
249 |
//$this->ecrireFichierCsv($ref, './retenu_absent.csv');
|
250 |
//$this->ajouterTaxonAbsent($abs);
|
250 |
//$this->ajouterTaxonAbsent($abs);
|
251 |
//$this->ecrireFichierCsv($sup, './superieur_absent.csv');
|
251 |
//$this->ecrireFichierCsv($sup, './superieur_absent.csv');
|
252 |
echo "$j correspondance pour nom retenu $i correspondance pour nom sup $k non pas de correspondance retenu";
|
252 |
echo "$j correspondance pour nom retenu $i correspondance pour nom sup $k non pas de correspondance retenu";
|
253 |
return $donnees;
|
253 |
return $donnees;
|