Questo dovrebbe iniziare con la parte "contesto"...
// return the part of the content where the keyword was matched
function get_surrounding_text($keyword, $content, $padding)
{
$position = strpos($content, $keyword);
// starting at (where keyword was found - padding), retrieve
// (padding + keyword length + padding) characters from the content
$snippet = substr($content, $position - $padding, (strlen($keyword) + $padding * 2));
return '...' . $snippet . '...';
}
$content = 'this is a really long string of characters with a magic word buried somewhere in it';
$keyword = 'magic';
echo get_surrounding_text($keyword, $content, 15); // echoes '... string with a magic word in it...'
Questa funzione non tiene conto dei casi in cui i limiti di riempimento andrebbero al di fuori della stringa di contenuto, ad esempio quando la parola chiave si trova vicino all'inizio o alla fine del contenuto. Inoltre non tiene conto di più corrispondenze, ecc. Ma si spera che almeno dovrebbe indirizzarti nella giusta direzione.