No dobra mam jeszcze jedne problem, mianowicie (kod html):
<td width="30%">Australia
</td> <td width="15%">DOLAR
</td> <td width="17%">1 AUD
</td>
<td width="12%">2.3338
</td> <td width="15%">2.4706
</td> <td width="12%">2.4022
</td>
<td width="30%">Kanada
</td> <td width="15%">DOLAR
</td>
<td width="17%">1 CAD
</td> <td width="12%">2.8924
</td> <td width="15%">3.0622
</td> <td width="12%">2.9773
</td>
No i wiadomo chcę wyciągnąć wszystkie dane, tylko jest problem że wartości są w różnych liniach i nie do konca to działa. Stworzyłem taką formułę:
<?php
preg_match_all('/<tr.*class=\"\">.*?<td.*width=\"30%\">(.*?)</td>.*?<td.*width=\"15%\">(.*?)</td>.*?<td.*width=\"17%\">(.*?)</td>.*?<td.*width=\"12%\">(.*?)</td>.*?<td.*width=\"15%\">(.*?)</td>.*?<td.*width=\"12%\">(.*?)</td>.*?</tr>/', $wynikcurl, $tablica); ?>
Niestety przy takiej formule zwracana jest pusta tablica.
Grzebiąc w necie dodawałem dodatkowe inf. typu i, s, si
<?php
....</tr>/[TUTAJ], $wynikcurl, $tablica);
?>
Ale efekt jest taki że przy s, si dostaje jakieś dziwactwa:
<?php
(
(
[0] => <tr class="">
<td width="30%">Australia</td>
<td width="15%">DOLAR</td>
<td width="17%">1 AUD</td>
<td width="12%">2.3338</td>
<td width="15%">2.4706</td>
<td width="12%">2.4022</td>
</tr>
<tr class="">
<td width="30%">Kanada</td>
<td width="15%">DOLAR</td>
<td width="17%">1 CAD</td>
<td width="12%">2.8924</td>
<td width="15%">3.0622</td>
<td width="12%">2.9773</td>
</tr>
)
(
[0] => Kanada
)
(
[0] => DOLAR
)
(
[0] => 1 CAD
)
(
[0] => 2.8924
)
(
[0] => 3.0622
)
(
[0] => 2.9773
)
)
?>
No i wartości są czytane tylko z drugiego <TR></TR>
Jak z tym sobie poradzić??
Czy ktoś ma jakiś dokładniejszy opis do preg_match, preg_match_all??
Pozdrawiam.