Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Automatyczne domykanie znaczników
Forum PHP.pl > Forum > PHP
SN@JPER^
Witam,

w jaki sposób napisać skrypt, który automatycznie uwzględniałby domykanie znaczników?

Otóz o to chodzi, że na stronie mam skracanie artykułu po x znakach...

Jeżeli zostanie otwarty znacznik <i>, a tekst zostanie skrócony to czcionka na całej stronie będzie pochyła, jak temu zapobiec?

Napisałem takie coś:

  1. <?php
  2. $tresc = ereg_replace('/&w;/', '',strip_tags($tresc));
  3. ?>


Jednakże nie chciałbym, aby znaczniki były ignorowane, więc poprzestałem...

Pozdrawiam.
wookieb
Wyrażeniem regularnym szukasz wszystkich otwartych znaczników i je zamykasz.
Coś w ten deseń
Kod
preg_match_all('/<(.*?)>/',$tekst, $matches);

Z matches wyłuskujesz nazwe taga i zamykasz.
SN@JPER^
Dzięki wielkie, dla ciekawych:

  1. <?php
  2. $tresc = stripslashes($fetch['tresc']);
  3.    preg_match_all('/<(.*?)>/',$tresc, $matches);
  4.    $tresc = substr($tresc, 0,$ile_znakow_wd_news);
  5.    
  6.    foreach ($matches as $val)
  7.    {
  8.        foreach($val as $key)
  9.        {
  10.          
  11.          if($key == "i")
  12.          {
  13.            $tresc = $tresc.'</'.$key.'>';
  14.          }
  15.          
  16.          elseif($key == "b")
  17.          {
  18.            $tresc = $tresc.'</'.$key.'>';
  19.          }
  20.        }
  21.    }
  22. ?>
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.