wenn du dein lexicon in einer db hast, muesstest du alle begriffe in deiner db durchgehen und dann im aktuellen text den begriff via str_replace mit link&text ersetzen.
vielleicht gibts auch eine schnellere/bessere loesung....
die Variante, bei der Auslieferung der Seite die Begriffe zu verlinken ist aus Performance-Sicht ungünstig. Es sei denn, Du arbeitest mit SeitenCaching, sonst wird Dein Server bei vielen Besuchern nicht glücklich.
Die normale Vorgehensweise sollt sein, dass du entweder beim Speichern eines Artikels die Seite auf Basis Deiner DB parst und die Verlinkung gleich mit in die DB schreibst. Hier ist der Nachteil, dass Deine Db weiter wächst, während die Seite nun abgespeichert ist.
Die andere Möglichkeit wäre ein Task, der z.B. nachts läuft und die Texte mit der Datenbank abgleicht, die Links einfügt und die Texte wieder in die DB schreibt.
Waldwolf hat vollkommen Recht, wenn irgendwie möglich auf jeden Fall nicht erst bei Auslieferung die Änderungen vornehmen. Ich würde empfehlen, wenn es keine Platzprobleme gibt, einfach 2 Versionen des Textes in der DB zu speichern: Einmal wie eingegeben und einmal mit den Links, damit du auch in Zukunft die linkfreie Version bearbeiten kannst und beim Abspeichern wird dann die Linkversion generiert.