J'ai une petite demande, je dois réaliser un projet de récupération de tirages, cependant tout va bien jusqu'au moment ou je dois récupérer les données des tirages avec seulement un tableau comme suit :
<?php
$html = '
<td class="column1 style0 s">17/01/2024</td>
<td class="column2 style0 s">soir</td>
<td class="column4 style0 n">2</td>
<td class="column5 style0 n">3</td>
<td class="column6 style0 n">7</td>
<td class="column7 style0 n">13</td>
<td class="column8 style0 n">19</td>
<td class="column9 style0 n">20</td>
<td class="column10 style0 n">24</td>
<td class="column11 style0 n">25</td>
<td class="column12 style0 n">26</td>
<td class="column13 style0 n">31</td>
<td class="column14 style0 n">39</td>
<td class="column15 style0 n">40</td>
<td class="column16 style0 n">42</td>
<td class="column17 style0 n">45</td>
<td class="column18 style0 n">46</td>
<td class="column19 style0 n">50</td>
<td class="column20 style0 n">54</td>
<td class="column21 style0 n">55</td>
<td class="column22 style0 n">57</td>
<td class="column23 style0 n">67</td>
<td class="column24 style0 n">3</td>';
preg_match('/<td class="column2 style0 s">(.*?)<\/td>/s', $html, $match);
echo 'TIRAGE : ['.strtoupper($match[1]).'] : ';
preg_match('/<td class="column1 style0 s">(.*?)<\/td>/s', $html, $match);
echo $match[1];
echo "<br><br>";
for($i=4;$i<=23;$i++)
{
preg_match('/<td class="column'.$i.' style0 n">(.*?)<\/td>/s', $html, $match);
echo $match[1]."<br>";
}
?>
Jusque là tout va bien, il s'affiche ceci :
J'ai moi cependant une page HTML de ce genre :TIRAGE : [SOIR] : 17/01/2024
2
3
7
13
19
20
24
25
26
31
39
40
42
45
46
50
54
55
57
67
J'ai essayer cela mais cela ne fonctionne pas ...<tr class="row1">
<td class="column1 style0 s">17/01/2024</td>
<td class="column2 style0 s">soir</td>
<td class="column4 style0 n">2</td>
<td class="column5 style0 n">3</td>
<td class="column6 style0 n">7</td>
<td class="column7 style0 n">13</td>
<td class="column8 style0 n">19</td>
<td class="column9 style0 n">20</td>
<td class="column10 style0 n">24</td>
<td class="column11 style0 n">25</td>
<td class="column12 style0 n">26</td>
<td class="column13 style0 n">31</td>
<td class="column14 style0 n">39</td>
<td class="column15 style0 n">40</td>
<td class="column16 style0 n">42</td>
<td class="column17 style0 n">45</td>
<td class="column18 style0 n">46</td>
<td class="column19 style0 n">50</td>
<td class="column20 style0 n">54</td>
<td class="column21 style0 n">55</td>
<td class="column22 style0 n">57</td>
<td class="column23 style0 n">67</td>
<td class="column24 style0 n">3</td>
</tr>
<tr class="row2">
<td class="column1 style0 s">17/01/2024</td>
<td class="column2 style0 s">midi</td>
<td class="column4 style0 n">5</td>
<td class="column5 style0 n">6</td>
<td class="column6 style0 n">15</td>
<td class="column7 style0 n">18</td>
<td class="column8 style0 n">19</td>
<td class="column9 style0 n">21</td>
<td class="column10 style0 n">26</td>
<td class="column11 style0 n">36</td>
<td class="column12 style0 n">37</td>
<td class="column13 style0 n">38</td>
<td class="column14 style0 n">39</td>
<td class="column15 style0 n">42</td>
<td class="column16 style0 n">44</td>
<td class="column17 style0 n">45</td>
<td class="column18 style0 n">46</td>
<td class="column19 style0 n">54</td>
<td class="column20 style0 n">56</td>
<td class="column21 style0 n">63</td>
<td class="column22 style0 n">67</td>
<td class="column23 style0 n">68</td>
<td class="column24 style0 n">2</td></tr>
<?php
$html = '<tr class="row1">
<td class="column1 style0 s">17/01/2024</td>
<td class="column2 style0 s">soir</td>
<td class="column4 style0 n">2</td>
<td class="column5 style0 n">3</td>
<td class="column6 style0 n">7</td>
<td class="column7 style0 n">13</td>
<td class="column8 style0 n">19</td>
<td class="column9 style0 n">20</td>
<td class="column10 style0 n">24</td>
<td class="column11 style0 n">25</td>
<td class="column12 style0 n">26</td>
<td class="column13 style0 n">31</td>
<td class="column14 style0 n">39</td>
<td class="column15 style0 n">40</td>
<td class="column16 style0 n">42</td>
<td class="column17 style0 n">45</td>
<td class="column18 style0 n">46</td>
<td class="column19 style0 n">50</td>
<td class="column20 style0 n">54</td>
<td class="column21 style0 n">55</td>
<td class="column22 style0 n">57</td>
<td class="column23 style0 n">67</td>
<td class="column24 style0 n">3</td>
</tr>
<tr class="row2">
<td class="column1 style0 s">17/01/2024</td>
<td class="column2 style0 s">midi</td>
<td class="column4 style0 n">5</td>
<td class="column5 style0 n">6</td>
<td class="column6 style0 n">15</td>
<td class="column7 style0 n">18</td>
<td class="column8 style0 n">19</td>
<td class="column9 style0 n">21</td>
<td class="column10 style0 n">26</td>
<td class="column11 style0 n">36</td>
<td class="column12 style0 n">37</td>
<td class="column13 style0 n">38</td>
<td class="column14 style0 n">39</td>
<td class="column15 style0 n">42</td>
<td class="column16 style0 n">44</td>
<td class="column17 style0 n">45</td>
<td class="column18 style0 n">46</td>
<td class="column19 style0 n">54</td>
<td class="column20 style0 n">56</td>
<td class="column21 style0 n">63</td>
<td class="column22 style0 n">67</td>
<td class="column23 style0 n">68</td>
<td class="column24 style0 n">2</td></tr>';
for($b=1;$b<=2;$b++)
{
preg_match('/<tr class="row'.$b.'"><td class="column2 style0 s">(.*?)<\/td><\/tr>/s', $html, $match);
echo 'TIRAGE : ['.strtoupper($match[0]).'] : ';
preg_match('/<td class="column1 style0 s">(.*?)<\/td>/s', $html, $match);
echo $match[1];
echo "<br>";
for($i=4;$i<=23;$i++)
{
preg_match('/<td class="column'.$i.' style0 n">(.*?)<\/td>/s', $html, $match);
echo $match[1].",<br>";
}
}
?>
Je m'excuse du désastre, ce code n'est certainement pas professionnel, mais j'aimerais comprendre.
J'aimerais donc la bonne REGEX svp qui pourrait aussi extraire la balise <tr>, que je puisse faire la bonne boucle pour extraire les 2 tirages correctement.
Merci.