php - Bir arama terimi etrafında metin görüntüleme ile sorun

0 Cevap

I http://stackoverflow.com/questions/1195947/best-practices-on-displaying-search-results-with-associated-text-snippets-from-ac at üzerinde stackoverflow bu kod bit bulundu

Ancak bu oldukça ben istediklerini yapmaz. Bu belirli bir arama terimi etrafında metni görüntüler, ancak iki sorun vardır

1) I want whole words only; 2) It doesn't limit the characters after the search term, only the ones before

Aşağıda kod. Nasıl bu iki sorunu çözmek için düzenleyebilirsiniz? Şimdiden teşekkürler:

$text = 'This is an example text page with content. It could be red, green or blue or some other random color. It dont really matter.';
$keyword = 'red'; 
$size = 15; // 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; 

0 Cevap