88 lines
3.1 KiB
PHP
88 lines
3.1 KiB
PHP
#!/usr/bin/php -c/var/www/batch/config/php_batch_sd.ini
|
|
<?php
|
|
|
|
include_once(FWK_PATH.'common/chiffres.php');
|
|
include_once(FWK_PATH.'common/dates.php');
|
|
include_once(INCLUDE_PATH.'insee/classMInsee.php');
|
|
include_once(INCLUDE_PATH.'partenaires/classMLiens.php');
|
|
include_once(FWK_PATH.'mail/sendMail.php');
|
|
|
|
$strInfoScript='Usage : '.basename($argv[0]). " <option> [FICHIERS]
|
|
Génération du cache des variables courantes si nécessaire.
|
|
|
|
Options :
|
|
-d Mode debug (Verbosité au maximum)
|
|
-f Forcer la re-Génération du cache
|
|
";
|
|
|
|
$modeDebug=$modeGeneration=false;
|
|
$argv=$_SERVER['argv'];
|
|
|
|
for ($i=1,$j=0; isset($argv[$i]); $i++) {
|
|
if (substr($argv[$i],0,1)=='-') {
|
|
switch (substr($argv[$i],1,1)) {
|
|
case 'd': $modeDebug=true; break;
|
|
case 'f': $modeGeneration=true; break;
|
|
case '-':
|
|
case '?': die($strInfoScript); break;
|
|
default: die('Option '. $argv[$i] . ' inconnue !'.EOL); break;
|
|
}
|
|
}// else $tabFichLigneCmd[]=$argv[$i];
|
|
}
|
|
|
|
$iDb=new WDB('sdv1');
|
|
|
|
$url="http://www.france-inflation.com/inflation-depuis-1901.php";
|
|
$referer='';
|
|
$page=getUrl($url, '', '', $referer, false);
|
|
$body=$page['body'];
|
|
|
|
$nbInsert=$nbErreur=$nbDoublon=0;
|
|
/*
|
|
<TR><TD>prev<br>2012</TD><TD><FONT COLOR='red'><b>(1.8 %)</b></FONT></TD><td>(2498)</td></TR>
|
|
<TR><TD>prev<br>2011</TD><TD><FONT COLOR='red'><b>2.1 %</b></FONT></TD><td>(2453)</td></TR>
|
|
<TR><TD>2010</TD><TD><FONT COLOR='red'><b>1.5 %</b></FONT></TD><td>2403</td></TR>
|
|
*/
|
|
|
|
if (preg_match_all("/<TR><TD>(.*\d{4,4})<\/TD><TD><FONT COLOR='red'><b>(.*) %\)?<\/b><\/FONT><\/TD><td>\(?([0-9\.]+)\)?<\/td><\/TR>/Uim", $body, $matches)) {
|
|
// <TR><TD>(2010)</TD><TD><FONT COLOR='red'><b>(1.7 %)</b></FONT></TD><td>(2408)</td></TR>
|
|
//print_r($matches);
|
|
|
|
foreach($matches[2] as $i=>$annee) {
|
|
if ($matches[1][$i]=='(') { $prov=true; $strProv=' provisoire'; }
|
|
else { $prov=false; $strProv=''; }
|
|
$taux=str_replace('(','',$matches[3][$i]);
|
|
$tabInsert=array('annee'=>$annee,
|
|
'infla'=>$taux,
|
|
'cumul'=>$matches[4][$i],
|
|
'dateInsert'=>date('Ymd'),
|
|
'provisoire'=>$prov,
|
|
);
|
|
//print_r($tabInsert);
|
|
//die();
|
|
if ($iDb->insert('inflation', $tabInsert)) {
|
|
echo date('Y/m/d - H:i:s') ." - Insertion du taux d'inflation pour l'année $annee=$taux...". EOL;
|
|
$nbInsert++;
|
|
}
|
|
elseif ($iDb->getLastErrorNum()==1062 && ($annee==date('Y') || $annee==date('Y')-1)) {
|
|
unset($tabInsert['dateInsert']);
|
|
echo date('Y/m/d - H:i:s') ." - Mise à jour du taux d'inflation$strProv pour l'année $annee=$taux...". EOL;
|
|
$iDb->update('inflation', $tabInsert, "annee=$annee");
|
|
}
|
|
elseif ($iDb->getLastErrorNum()<>1062) {
|
|
echo date('Y/m/d - H:i:s') ." - ERREUR ". $iDb->getLastError() ." lors de l'insertion du taux d'inflation pour l'année $annee=$taux...". EOL;
|
|
$nbErreur++;
|
|
}
|
|
else
|
|
$nbDoublon++;
|
|
}
|
|
} else
|
|
echo date('Y/m/d - H:i:s') ." - ERREUR lors de la récupération des taux d'inflation !". EOL;
|
|
|
|
$nbInfla=$i+1;
|
|
|
|
if ($nbInfla==$nbDoublon)
|
|
echo date('Y/m/d - H:i:s') ." - Aucun ajout d'inflation sur les $nbInfla années disponibles.". EOL;
|
|
|
|
?>
|