Спасибо Евгений Калибров за скрипт. Пользовался данным скриптом некоторое время. Позже решил упростить его. Мой скрипт универсальный, ловит любого робота: Google, Yandex, Yahoo и Bing. Он удобен тем, что не нужно перечислять роботов каждого отдельно и здесь мы обходимся без циклов, что работает в несколько раз быстрее. Проверено, ботов находит идеально! Пробуйте и юзайте на здоровье.
class ScanBot
{
public function isBot()
{
$down_reg = mb_strtolower($_SERVER['HTTP_USER_AGENT']);
$down_reg = str_replace(array(' '), '', $down_reg);
$find_bot_step1 = str_replace(array('yandex', 'google', 'yahoo', 'bing'), ' this_is_bot! ', $down_reg);
$find_bot_step2 = explode(' ', $find_bot_step1);
if ($find_bot_step2[1] == "this_is_bot!") {
return true;
}
return false;
}
}