5,7 → 5,9 |
* Traitement des observations sauvages pour les migrer vers des champs étendus |
* |
* Description : classe permettant d'affecter des champs étendus aux observations sauvages |
* Utilisation : php script.php migration_sauvages -a migrerObservationsSauvages -v 3 |
* Utilisation : |
* - Pour migrer les données : /opt/lamp/bin/php script.php migration_sauvages -a migrer -v 3 |
* - Pour exporter les données : /opt/lamp/bin/php script.php migration_sauvages -a exporter -s chemin_vers_fichier_sortie |
* |
* @category PHP 5.3 |
* @package scripts |
18,6 → 20,8 |
*/ |
// +-------------------------------------------------------------------------------------------------------------------+ |
class MigrationSauvages extends Script { |
protected $parametres_autorises = array( |
'-s' => array(false, true, "Chemin vers le fichier de sortie pour l'export")); |
|
// +-------------------------------------------------------------------------------------------------------------------+ |
public function executer() { |
29,15 → 33,15 |
$cmd = $this->getParametre('a'); |
try { |
switch ($cmd) { |
case 'migrerObservationsSauvages' : |
case 'migrer' : |
$this->migrerObservationsSauvages(); |
break; |
case 'exporterObservationsSauvagesAMigrer' : |
case 'exporter' : |
$this->exporterObservationsSauvagesAMigrer(); |
break; |
default : |
$msg = "Erreur : la commande '$cmd' n'existe pas!\n". |
"Commandes existantes : migrerObservationsSauvages"; |
"Commandes existantes : migrer, exporter"; |
throw new Exception($msg); |
} |
} catch (Exception $e) { |
49,7 → 53,10 |
$total = $this->dao->obtenirNbObservationsSauvages(); |
$pas_liste_obs = 5000; |
echo " Traitement des $total observations par paquet de $pas_liste_obs \n"; |
$fp = fopen('/home/jpm/obs.csv', 'w'); |
|
$fichier = $this->getParametre('s'); |
|
$fp = fopen($fichier, 'w'); |
$ecrireEntete = true; |
for ($i = 0; $i <= $total; $i += $pas_liste_obs) { |
$liste_observations = $this->dao->obtenirObservationsSauvages($i, $pas_liste_obs); |
206,7 → 213,7 |
'label' => 'Adresse', |
'valeur' => $lieu_dit); |
} |
if ($cote_rue != '') { |
if (preg_match('/^(?:2cotes|pair|impair)$/', $cote_rue)) { |
$champs_etendus[] = array('id_observation' => $id, |
'cle' => 'coteRue', |
'label' => 'Côté rue', |