Autor Zpráva
Nintendo
Profil *
Ahoj, mohu se zeptat, jestli mi někdo poradíte jak udělat, aby sem si udělal filtr a ním prošel text?
například: když to najde v textu :mezera: - napíše to <br / > nebo \n
:smile1: - udělá to <img src="smiles/smile1.png"> atd...
Díkys
panther
Profil
Nintendo:
str_replace()
Michal Benda
Profil
Napadá mně tohle:

class Zamena { // nic lepšího mě nenapadlo
  public $text;
  public $html;
  
  public function __construct($text, $html){
    $this->text = $text;
    $this->html = $html;
  }
}

$dlouhyText = "...:smile1:... ...";

$zameny[] = new Zamena(" ", "<br />"); // tuhle zrovna moc nechápu, ale dobře
$zameny[] = new Zamena(":smile1:", "<img src=\"smiles/smile1.png\">");
// atd.

foreach($zameny as $zamena){
  str_replace($zamena->text, $zamena->html, $dlouhyText);
}

echo $dlouhyText; // vytiskne ...<img src="smiles/smile1.png">...<br />...


EDIT: Aha, dlouho jsem nerefreshoval :)
Nintendo
Profil *
Michal Benda:
Není v tom chyba? Místo obrázku mi to vypíše :smile1:
panther:
Děkuji
Mike8748
Profil
Nintendo:
nebo použiješ funkci strtr

$zmeny=array(":mezera:"=>"<br />",":smile1:"=>"<img src='...'>");
$text=strtr($text,$zmeny);
Nintendo
Profil *
Mike8748:
Děkuji, perfektní, to mi stačí :)
Michal Benda
Profil
Nintendo:
Není v tom chyba? Místo obrázku mi to vypíše :smile1:

EDIT řádek 18 na:

$dlouhyText = str_replace($zamena->text, $zamena->html, $dlouhyText);

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0