Sì, ma non ho mai fatto una cosa del genere e non so nemmeno se php sia il linguaggio migliore per farlo, comunque se dovessi farlo farei così:

Leggo il contenuto della directory (filtrando magari solo i file html)

A questo punto ho un array con i nomi dei file html

Avvio un ciclo dove faccio scorrere l'array nel quale:
apro il file
leggo tutto il contenuto
Se la/le parole cercate ci sono metto il nome di questo file in un array risultato.

alla fine l'array risultato conterrà i link delle pagine con le occorrenze trovate.