Det er fint at søge i den faktiske database, indtil du vil tilføje smarte funktioner som den ovenfor. Efter min erfaring er det bedst at oprette en dedikeret søgetabel med søgeord og side-id'er/URL'er/osv. Udfyld derefter denne tabel hvert n timer med indhold. Under denne population kan du tilføje uddrag for hvert dokument for hvert søgeord.
Alternativt kan et hurtigt hack være:
<?php
$text = 'This is an example text page with content. It could be red, green or blue.';
$keyword = 'red';
$size = 5; // size of snippet either side of keyword
$snippet = '...'.substr($text, strpos($text, $keyword) - $size, strpos($text, $keyword) + sizeof($keyword) + $size).'...';
$snippet = str_replace($keyword, '<strong>'.$keyword.'</strong>', $snippet);
echo $snippet;
?>