Podświetlanie szukanego słowa w wyszukiwarce
Skrypt tworzy funkcję która pobiera 2 paramatry:
$text - To tekst który chcemy przeszukać,
$search - To słowo którego szukamy
Jak użyć
$text = "Krowa szła sobie ulicą i szukała innej krowa która siedziała na łące z jakąś krowa";
$search = "Krowa";
echo search_highlight($text, $search);
Listing
<?php
function search_highlight($text, $search)
{
$colors = array('#FFFF00','#00FFFF','#99FF99','#FF9999','#FF66FF',
'#880000','#00AA00','#886800','#004699','#990099');
$terms = array();
preg_match_all('/(".+?"|\S+)/', $search, $m);
foreach (array_unique($m[0]) as $s) {
$terms[] = str_replace('"', '', $s);
}
$r = $text;
for ($i = 0; $i < count($terms); $i++) {
$blocks = preg_split('/(<.+?'.'>)/s', $r, -1, PREG_SPLIT_NO_EMPTY | PREG_SPLIT_DELIM_CAPTURE);
$r = '';
for ($j = 0; $j < count($blocks); $j++) {
if (substr($blocks[$j], 0, 1) != '<') {
$replace = '<b style="color:'.($i / 5 % 2 ? 'white':'black').
';background-color:'.$colors[$i % 10].'">\\1</b>';
$blocks[$j] = preg_replace('/('.preg_quote($terms[$i]).')/i',
$replace, $blocks[$j]);
}
$r .= $blocks[$j];
}
}
return $r;
}
$text = "Krowa szła sobie ulicą i szukała innej krowa która siedziała na łące z jakąś krowa";
$search = "Krowa";
echo search_highlight($text, $search);
?>
Dodano przez: igor
Ranga: Administrator serwisu Punktów: 0
Ranga: Administrator serwisu Punktów: 0
Komentarze użytkowników
Super! Dobre jako wyszukiwarka tekstu...
autor: adikso | 12481 | 2011-06-12 22:03:06
:: Losowe artykuły
:: Wymiana linków
Modowe inspiracje |
Android Gry i Aplikacje |
ZaplanujTransport.pl: Przeprowadzki, transport, aukcje |
Logo dla firmy |
Change Tires - Car Weather Forecast Reminder |
Laminas: MVC Framework for PHP |
IT Books Reviews and Programming: JS, JAVA, PHP, ANDROID, CSS |
Katalog roślin |
Programming articles: JAVA, PHP, C++, Python, JavaScript |
Kancelaria Adwokacka Łukasz Huszno