function affichageBraderies($idMois,$idRegion,$idDepartements){ function rechercheJourSemaine($strCorrompu){ $jourDeLaSemaine = array("lundi","mardi","mercredi","jeudi","vendredi","samedi","dimanche"); $arret = false; $i = 0; while(($i<= sizeof($jourDeLaSemaine)) && ($arret == false)){ if(preg_match('/'.$strCorrompu.'/',$jourDeLaSemaine[$i])) $arret = true; else $i++; } return($jourDeLaSemaine[$i]); } //echo $idDepartements; // Instanciation de la classe $t = new Template('templates/listeBraderies.tpl'); // Simple variable $t->simpleVar(array( 'PAGE' => 'Sélection des braderies à visiter pour créer votre itinéraire', 'P_MOIS' => $idMois, 'P_REGION' => $idRegion, )); $url = '/calendrier/imprimable/calendrier_imprimable.php?k=5-1&p_mois='.$idMois.'®ion='.$idRegion; // Récupération de la page des braderies //$pageBraderies = postagePageSurPointDeChine($url,$idMois,$idRegion,$idDepartements); $fp = fopen("test.html","r"); while(!feof($fp)) { $pageBraderies .= fgets($fp,255); } fclose($fp); // Tableau de découpe des jours de braderies $listeBraderies = array(); // Séparateur des jours de braderies $separateurs = '([\s]?[\w])'; $listeBraderies = preg_split($separateurs, $pageBraderies); $affichageBraderies = array(); // Grâce au split, on découpe chaque jour de braderie for($i=1;$i '."\n\n"; // SAUVEGARDE REGEX qui FONCTIONNE preg_match_all("|\s?\S?([\w]*\s+\S+[\d]*\s+\S+[\w]*) \n\s*\S*<\/font><\/strong>|U", //Expression régulière scrutant la date de la braderie preg_match_all("|(\w*)\s+(\d*)\s+(\w*)\s+\n\s*\S*<\/font><\/strong>|U", $listeBraderies[$i], $libelleJour, PREG_SET_ORDER); //Si la braderies est sur 1 jour if(!empty($libelleJour[0][1])){ echo "La date de la braderie est : ".rechercheJourSemaine($libelleJour[0][1])." ".$libelleJour[0][2]." ".$libelleJour[0][3]; // Mise en tableau des valeurs de la date $affichageBraderies[$i][1] = rechercheJourSemaine($libelleJour[0][1]).' '.$libelleJour[0][2].' '.$libelleJour[0][3]; $affichageBraderies[$i][2] = ''; }else{ // Sinon la braderies est sur 2 jours preg_match_all("|(\w*)\s+(\d*)<\/font><\/strong>\s+\n\s*\S*\s+\n\S*\s*(\w*)\s+\w{2}\s+(\w*)\s+(\d*)\s+(\w*)\s+<\/font><\/strong>|U", $listeBraderies[$i], $libelleJourDebut, PREG_SET_ORDER); // Mise en tableau des valeurs de la date de début et de fin $affichageBraderies[$i][1] = rechercheJourSemaine($libelleJourDebut[0][1]).' '.$libelleJourDebut[0][2].' '.$libelleJourDebut[0][3]; $affichageBraderies[$i][2] = rechercheJourSemaine($libelleJourDebut[0][4]).' '.$libelleJourDebut[0][5].' '.$libelleJourDebut[0][6]; echo "
"; echo "Date debut braderie : ".rechercheJourSemaine($libelleJourDebut[0][1])." ".$libelleJourDebut[0][2]." ".$libelleJourDebut[0][3]; echo "
"; echo "Date fin braderie : ".rechercheJourSemaine($libelleJourDebut[0][4])." ".$libelleJourDebut[0][5]." ".$libelleJourDebut[0][6]; } //Expression régulière scrutant l'adresse de chaque braderies preg_match_all("#\s+\n\s+(\d*).*\n\s+(.*?)\s<.*\n\s+\-\s{1}(.*?)\[(\d*)#", $listeBraderies[$i], $braderies, PREG_SET_ORDER); // Tableau des braderies pour un jour donné $braderiesAssociees = array(); // Pour chaque braderies du jour en cours for($j=0;$j <= (sizeof($braderies)-1);$j++) { echo "
"; echo "Departement Braderie : ".$braderies[$j][1]; echo "
"; echo "Ville Braderie : ".$braderies[$j][2]; echo "
"; $adresse[$j] = explode(" -",$braderies[$j][3]); echo "Adresse Braderie : ".$adresse[$j][0]; echo "
"; echo "Nombre exposants : ".$braderies[$j][4]; echo "
"; // Nom de variable de la braderie $braderiesAssociees[$j][0] = 'brad['.$i.']['.$z.']'; // Valeur de la variable de la braderie $braderiesAssociees[$j][1] = 'brad['.$i.']['.$z.']'; // Département de la braderie $braderiesAssociees[$j][2] = $braderies[$j][1]; // Ville de la braderie $braderiesAssociees[$j][3] = $braderies[$j][2]; // Adresse de la braderie $braderiesAssociees[$j][4] = $adresse[$j][0]; // Nombre d'exposants $braderiesAssociees[$j][5] = $braderies[$j][4]; // Important ou non (si le nombre d'exposants supérieur à 100 exposants) if($braderies[$j][4] >= 100) $braderiesAssociees[$j][6] = $braderies[$j][4]; else $braderiesAssociees[$j][6] = $braderies[$j][4]; } } $t->parse(); }