Code Igniter – лучший способ обнаружения браузера

Я хочу шунтировать все браузеры определенного возраста на их собственную страницу. Каков наилучший метод для этого? Возможно, некоторые JS в заголовке, который завернут:

<!--[if lte IE 7 ]> <script type="text/javascript"> window.location = "/unsupported-browser/"; </script> <![endif]--> 

Не следует ли переслать браузер: http://example.com/unsupported-browser/, где у меня есть базовый контроллер и просмотреть его? Это так просто?

Сделайте это вместо php. Используйте класс user_agent и перенаправляйтесь на эту страницу.

Но что более важно, почему бы вам не разрешить пользователям IE доступ к вашему сайту? Это связано с CSS или чем-то еще?

Код:

 $this->load->helper('url'); $this->load->library('user_agent'); if ($this->agent->browser() == 'Internet Explorer' and $this->agent->version() <= 7) redirect('/unsupported-browser'); 

Редактировать:

Как уже упоминалось; если вы хотите это по всему сайту, запустите его в MY_Controller и обязательно добавьте $this->uri->segment(1) != 'unsupported-browser' в качестве дополнительного условия, чтобы избежать переадресации циклов.

Загрузите библиотеку с http://mobiledetect.net

Поместите Mobile_Detect.php в «библиотеки»

внутри основного контроллера

 public function index() { $this -> load -> library('Mobile_Detect'); $detect = new Mobile_Detect(); if ($detect->is('Chrome') || $detect->is('iOS')) { // whatever you wanna do here. } } 

Найти документацию по адресу http://dwij.co.in/mobile-os-detection-in-php-codeigniter