function get_search_phrase($referer){
$key_start = 0;
$search_phrase = "";
// used by dogpile, excite, webcrawler, metacrawler
if (strpos($referer, '/search/web/') !== false) $key_start = strpos($referer, '/search/web/') + 12;
// used by chubba
if (strpos($referer, 'arg=') !== false) $key_start = strpos($referer, 'arg=') + 4;
// used by dmoz
if (strpos($referer, 'search=') !== false) $key_start = strpos($referer, 'query=') + 7;
// used by looksmart
if (strpos($referer, 'qt=') !== false) $key_start = strpos($referer, 'qt=') + 3;
// used by scrub the web
if (strpos($referer, 'keyword=') !== false) $key_start = strpos($referer, 'keyword=') + 8;
// used by overture, hogsearch
if (strpos($referer, 'keywords=') !== false) $key_start = strpos($referer, 'keywords=') + 9;
// used by mamma, lycos, kanoodle, snap, whatuseek
if (strpos($referer, 'query=') !== false) $key_start = strpos($referer, 'query=') + 6;
// don't allow encrypted key words by aol
if (strpos($referer, 'encquery=') !== false) $key_start = 0;
// used by ixquick
if (strpos($referer, '&query=') !== false) $key_start = strpos($referer, '&query=') + 7;
// used by aol
if (strpos($referer, 'qry=') !== false) $key_start = strpos($referer, 'qry=') + 4;
// used by yahoo, hotbot
if (strpos($referer, 'p=') !== false) $key_start = strpos($referer, 'p=') + 2;
// used by google, msn, alta vista, ask jeeves, all the web, teoma, wisenut, search.com
if (strpos($referer, 'q=') !== false) $key_start = strpos($referer, 'q=') + 2;
// if present, get the search phrase from the referer
if ($key_start > 0){
if (strpos($referer, '&', $key_start) !== false){
$search_phrase = substr($referer, $key_start, (strpos($referer, '&', $key_start) - $key_start));
} elseif (strpos($referer, '/search/web/') !== false){
if (strpos($referer, '/', $key_start) !== false){
$search_phrase = urldecode(substr($referer, $key_start, (strpos($referer, '/', $key_start) - $key_start)));
} else {
$search_phrase = urldecode(substr($referer, $key_start));
}
} else {
$search_phrase = substr($referer, $key_start);
}
}
$search_phrase = urldecode($search_phrase);
return $search_phrase;
}