Puedes hacer tu propia funcion, que o que tendria que hacer es ir recorriendo el texto en busca del string que quieres tesaltar (puedes usar strpos o preg_match), y primero deberias pasar ambos strings a mayusculas o minusculas, digamos algo asi:
Código PHP:
function resaltar_palabras($texto, $palabras)
{
// en $texto viene el texto original
// en $palabras viene el "criterio de busqueda"
// pasamos todo a mayusculas, pero en variables auxiliares
$textoM = strtoupper($texto);
$palabrasM = strtoupper($palabras);
// voy a trabajar sobre esta otra variable
$textoS = $texto;
// armo un array con las palabras
$lista_palabras = explode(" ",$palabrasM);
// recorro el array de palabras
foreach($lista_palabras as $palabra)
{
// ahora reocrro el texto
while($pos = strpos($textoM, $palabra))
{
$len = strlen($palabra);
// reemplazo en ambos strings, para mantener una relacion de tamaño en ambos
$textoS = substr($textoS, 0, $pos)."<font color='#ffff00'>".substr($textoS, $pos, $len)."</font>".substr($textoS, ($pos+$len));
// en el estring auxiliar reemplazamos por blancos, para no entrar en un loop infernal
$textoM = substr($textoM, 0, $pos)."<font color='#ffff00'>".str_pad(" ", $len, " ")."</font>".substr($textoM, ($pos+$len));
}
}
return $textoS;
}
la función está documentada, igual quedarian algunas cosas por salvar, como los acentos y esos asuntos, pero con un tratamiento de str_replace y un poco de maña se puede lograr algo muy bueno, si necesitas una mano con eso avisa.
saludos,
chubu