[PHP] Выдрать строку из юзерагента

12
O
На сайте с 29.05.2008
Offline
195
798

Здравствуйте, хочу выводить скрипт для совместимости с IE только для IE. Как при помощи глобального массива $_SERVER выдрать из него конкретную строку (произвести поиск), например, MSIE7.

Спасибо.

php.developer
На сайте с 22.11.2010
Offline
94
#1

$_SERVER['HTTP_USER_AGENT'], а дальше, например, substr_count.

jokerov
На сайте с 18.07.2008
Offline
102
#2


preg_match("/MSIE7/is", $_SERVER['HTTP_USER_AGENT'], $m);
if($m) echo "Internet Explorer 7 detected";
O
На сайте с 29.05.2008
Offline
195
#3

jokerov, вроде то что надо. Сейчас попробую (3 день только PHP учу :)).

jokerov
На сайте с 18.07.2008
Offline
102
#4
ortegas:
jokerov, вроде то что надо. Сейчас попробую (3 день только PHP учу :)).

Если только начали учить PHP то воспользуйтесь советом php.developer, его версия более простая для понимания.

O
На сайте с 29.05.2008
Offline
195
#5

jokerov, нет-нет, мне и эта легкая :). SQL только тяжеловат, а так все что читаю, то и в голове. Читаю полное PHP5 руководство Джона Коггзолла, но и з PHP.SU уже много в голове осталось :). Спасибо.. Столько функций, можно запутаться, тяжело понять которую лучше использовать :).

DiAksID
На сайте с 02.08.2008
Offline
236
#6
ortegas:
jokerov, вроде то что надо. Сейчас попробую (3 день только PHP учу :)).

заодно выдайте временно vur_dump( $_SERVER ) и посмотрите что там по чём. очень полезно...

show must go on !!!...
php.developer
На сайте с 22.11.2010
Offline
94
#7
jokerov:
Если только начали учить PHP то воспользуйтесь советом php.developer, его версия более простая для понимания.

Спасибо.:)

Просто, на мой взгляд, регулярки имеет смысл использовать для более сложного поиска.

ortegas, вот применение функции.


<?php
if(substr_count($_SERVER['HTTP_USER_AGENT'],'MSIE7')!=0){
echo "IE";
}
O
На сайте с 29.05.2008
Offline
195
#8
DiAksID:
заодно выдайте временно vur_dump( $_SERVER ) и посмотрите что там по чём. очень полезно...

print_f делал.. Все то же самое, что и в Dev Tool Google Chrome :).

ortegas добавил 23.05.2011 в 16:05

Блин, третий день, а я уже люблю PHP :).

ortegas добавил 23.05.2011 в 16:12

php.developer:
$_SERVER['HTTP_USER_AGENT']

А зачем скобки? Я всегда без скобок массив указываю..

php.developer
На сайте с 22.11.2010
Offline
94
#9
ortegas:

А зачем скобки? Я всегда без скобок массив указываю..

В скобках не массив, а ключ массива, он указывается либо так $array['key'], если массив ассоциативный, либо $array[0](0-это номер элемента), если не ассоциативный. Но к слову, элементом массива, может быть другой массив:). То есть могут такие записи $registry['config']['dbname'] ну и так далее вариаций очень много

O
На сайте с 29.05.2008
Offline
195
#10

php.developer, я это понял, но ведь ассоциативный массив и без скобок работает :). В книге в скобках, буду значит тоже в скобках писать.

12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий