<? /* Файл : sniffer.php Назначение: Идентификация типа/версии браузера и платформы Автор: В. Дж. Гилмор Дата : 24 августа 2000 г. */ // Функция: browser_info // Назначение: Возвращает тип и версию браузера function browser_info ($agent) { // Определить тип браузера // Искать сигнатуру Internet Explorer if (ereg('MSIE ([0-9].[0-9]{1,2})', $agent, $version)) $browse_type = "IE"; $browse version = $version[1]; // Искать сигнатуру Opera elseif (ereg( 'Opera ([0-9].[0-9]{1,2})'. $agent, $version)): $browse_type = "Opera": $browse_version = $version[1]: // Искать сигнатуру Netscape. Проверка браузера Netscape // *должна* выполняться после проверки Internet Explorer и Opera, // поскольку все эти браузеры любят сообщать имя // Mozilla вместе с настоящим именем. elseif (ereg( 'Mozilla/([0-9].[0-9]{1,2})'. $agent, $version)) : $browse_type = "Netscape"; $browse_version = $version[1]; // Если это не Internet Explorer, Opera или Netscape. // значит, мы обнаружили неизвестный браузер, else : $browse_type = "Unknown"; $browse_version = "Unknown"; endif: // Вернуть тип и версию браузера в виде массива return array ($browse_type, $browse_version); } // Конец функции browser_info // Функция: opsys_info // Назначение: Возвращает информацию об операционной системе пользователя function opsys_info($agent) { // Идентифицировать операционную систему // Искать сигнатуру Windows if ( strstr ($agent. 'win') ) : $opsys = "windows"; // Искать сигнатуру Linux elseif ( strstr($agent, 'Linux') ) : $opsys = "Linux"; // Искать сигнатуру UNIX elseif ( strstr (Sagent, 'Unix') ) : $opsys = "Unix"; // Искать сигнатуру Macintosh elseif ( strstr ($agent, 'Mac') ) : $opsys = "Macintosh"; // Неизвестная платформа else : $opsys = "Unknown"; endif; // Вернуть информацию об операционной системе return $opsys; } // Конец функции opsys_info // Сохранить возвращаемый массив в списке list ($browse_type. $browse_version) = browser_info ($HTTP_USER_AGENT); Soperating_sys = opsysjnfo ($HTTP_USER_AGENT); print "Browser Type: $browse_type <br>"; print "Browser Version: $browse_version <br>"; print "Operating System: $operating_sys <br>": ?>