Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static function detectSearchEngine($referrerURL){
- $search_engines = Array (
- Array("name"=>"Mail", "pattern"=>"go.mail.ru/search_images", "param"=>"q="),
- Array("name"=>"Mail", "pattern"=>"go.mail.ru", "param"=>"q="),
- Array("name"=>"Google", "pattern"=>"images.google.", "param"=>"q="),
- Array("name"=>"Google", "pattern"=>"google.", "param"=>"q="),
- Array("name"=>"Google", "pattern"=>"google.", "param"=>"as_q="),
- Array("name"=>"Yahoo", "pattern"=>"search.yahoo.com", "param"=>"p="),
- Array("name"=>"Yandex", "pattern"=>"images.yandex.ru/", "param"=>"text="),
- Array("name"=>"Yandex", "pattern"=>"m.yandex.ru/search", "param"=>"query="),
- Array("name"=>"Yandex", "pattern"=>"yandex.ru/msearch", "param"=>"text="),
- Array("name"=>"Yandex", "pattern"=>"hghltd.yandex.net", "param"=>"text="),
- Array("name"=>"Yandex", "pattern"=>"yandex.ru", "param"=>"text="),
- Array("name"=>"Yandex", "pattern"=>"ya.ru", "param"=>"key="),
- Array("name"=>"Bing", "pattern"=>"bing.com", "param"=>"q="),
- );
- if ( isset ( $referrerURL ) && strlen ( $referrerURL ) > 3 ){
- $tmp = parse_url ( urldecode ( trim ( $referrerURL ) ) );
- if ( is_array ( $tmp ) && isset ( $tmp["host"] ) ) {
- if (!isset ($tmp["path"])) {
- $tmp["path"] = "";
- }
- $reff = str_replace("www.", "", $tmp["host"]) . $tmp["path"];
- if ( isset ( $tmp["query"] ) && strlen ( $tmp["query"] ) > 2 ){
- $params = explode ( "&", $tmp["query"] );
- foreach ( $search_engines as $engine ) { // Поиск по всем сигнатурам
- if (strpos($reff, $engine['pattern']) !== FALSE) {
- $i = strlen ( $engine['param'] );
- foreach ( $params as $param )
- {
- if ( !$param ){
- continue;
- }
- if ( substr ( $param, 0, $i ) == $engine['param'] ){
- return $engine['name'];
- }
- }
- }
- }
- }
- }
- }else{
- return false;
- }
- return false;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement