Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][HTML]parsowanie HTML
Forum PHP.pl > Forum > Przedszkole
siutek
witam, nie bardzo wiem jak sparsowac kod HTML by wyciagnac spomiedzy jego znacznikow interesujace mnie dane.

mam w php arraya:
  1. <?php
  2. 0=>'<td class="al">zenek</td><td class="ar">30</td><td class="ar">07.10.2008 11:51:22</td></tr>',
  3. 1=>'<td class="al">franek</td><td class="ar">29</td><td class="ar">07.10.2008 11:51:10</td></tr>',
  4. 2=>'<td class="al">zbychu</td><td class="ar">27</td><td class="ar">07.10.2008 11:51:09</td></tr>',
  5. 3=>'<td class="al">janek</td><td class="ar">26</td><td class="ar">07.10.2008 11:50:50</td></tr>',
  6. 4=>'<td class="al">ferdek</td><td class="ar">25</td><td class="ar">07.10.2008 11:50:33</td></tr>'
  7. );
  8. ?>


moj problem polega na tym, ze nie wiem jak sprawic by w petli otrzymywac za kazdym razem arraya o wartosciach
  1. <?php
  2. 0=>array(0=>'zenek',1=>'30',2=>'07.10.2008 11:51:22'),
  3. 1=>array(0=>'franek',1=>'29',2=>'07.10.2008 11:51:10')
  4. // i tak dalej...
  5. );
  6. ?>


nie tlumaczcie mi jak robic petle, ani jak Tworzyc arraya, bo tyle wiem tongue.gif powiedzcie jak sie dobrac bezposrednio do tych danych, by moc je przypisac do arraya??
rzepski666
  1. <?php
  2. $tab = array(
  3. 0=>'<td class="al">zenek</td><td class="ar">30</td><td class="ar">07.10.2008 11:51:22</td></tr>',
  4. 1=>'<td class="al">franek</td><td class="ar">29</td><td class="ar">07.10.2008 11:51:10</td></tr>',
  5. 2=>'<td class="al">zbychu</td><td class="ar">27</td><td class="ar">07.10.2008 11:51:09</td></tr>',
  6. 3=>'<td class="al">janek</td><td class="ar">26</td><td class="ar">07.10.2008 11:50:50</td></tr>',
  7. 4=>'<td class="al">ferdek</td><td class="ar">25</td><td class="ar">07.10.2008 11:50:33</td></tr>'
  8. );
  9.  
  10. foreach ($tab as $k => $v) {
  11.    $v = str_replace('</td>', ';', $v);
  12.    $v = strip_tags($v);
  13.    $a = explode(';', $v);
  14.    $tab[$k] = $a;
  15. }
  16.  
  17. echo '<pre>'; var_dump($tab); echo '</pre>';
  18. ?>


może być?
Zyx
Masz do wyboru:
1. Napisanie czegoś na kształt parsera HTML, ale to trwa trochę czasu i do wielu zastosowań okazuje się zbyt dużym zachodem.
2. Piszesz głupie wyrażenie regularne, które udaje, że rozumie HTML-a:

  1. <?php
  2. if(preg_match_all('#<(.*)>(.*)</(.*)>#is', $linia, $wyniki))
  3. {
  4.  var_dump($wyniki);
  5. }
  6. ?>


var_dump() pokaże Ci wynik działania, możesz sobie stamtąd wybrać to, co Cię interesuje.

Tylko uwaga: takie wyrażenie będzie działać bez sensu, jeśli będziesz próbował podawać tekst z zagnieżdżonymi znacznikami.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.