Hallo Stefan!
Nachdem mich dieses Problem interessiert hat, habe ich mich jetzt hingesetzt und dank dedlfix' Hinweis auf strtr(); habe ich Deine 'Aufgabe' nun lösen können:
// Festlegung von Text und Suchstring:
$text = 'variable lighte';
$suchmuster_input = 'vari li';
$suchmuster = htmlspecialchars($suchmuster_input);
// Der Suchstring wird in die einzelnen Teile zerlegt:
$suchen = explode(' ',$suchmuster);
// Ein Array mit den zu ersetzenden Stringteilen als Key
// und den Ersetz-Pattern als Werte wird gebildet:
$ersetzungen = array();
$arrayindex = 0;
foreach ( $suchen AS $suche )
{
$ersetzungen[$suche] = '<span class="highlight">'.$suche.'</span>';
}
// Nun kann der Text umgewandelt werden
// und das Highlighting stattfinden:
$text_neu = strtr($text, $ersetzungen);
Ich hoffe, ich konnte helfen! Danke dedlfix für den Denkanstoß!
Mit freundlichen Grüßen
Hugo Egon Balder