Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [inne][PHP]Php - usuwanie z html-a tylko określonych tagów`
Forum PHP.pl > Forum > Przedszkole
doktorek
Witam

Jak zrobić prosty parser, który z ciągu HTML-a wywali mi wszystkie <font ... > </font> i np. <table ... > i </table> itd. ?

Niektóre tagi chcę zostawić a niektóre wywalić smile.gif

Pozdrawiam
phpion
strip_tags
doktorek
... tak

dziekuje a jak zrobic zeby system zostawial tagi o okreslonych parametrach.

Np. usuwal <font color=""> a nie usuwal <font size=""> albo usuwal sam parametr (usunal color="") z <font size="" color"">

pzdr
everth
Polecam DOMDocument oraz Xpath. U ciebie na szybko mogłoby wyglądać to tak:
  1.  
  2. //Cały twój kod twojej strony (musi być pozbawiony błędów i ostrzeżeń)
  3.  
  4. echo parseHtml(ob_get_flush());
  5.  
  6. function parseHtml($html) {
  7. $doc = new DOMDocument();
  8. $doc->loadHTML($html);
  9.  
  10. $xpath = new DOMXPath($doc);
  11. $entries = $xpath->query("//a"); //znajdź za pomocą Xpath wszystkie elementy o tagu A
  12. foreach ($entries as $node) {
  13. $node->setAttribute('src','urlDo mojej strony'); // ustawiam atrybut src
  14. $node->removeAttribute('class'); // usuwam cały atrybut class
  15. $node->getAttribute('id'); // pobieram attrybut id
  16. }
  17.  
  18. return $doc->saveHTML();
  19. }
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.