Вообще ничего не делаем на сервере по поводу мобильных устройств. Все разруливается с клиента (фича детекшен, никакой привязки к юзер агенту браузера) и адаптивный дизайн по возможности.
Но если вам очень хочется - есть
https://github.com/browscap/browscap-php который использует сторонний сервис и по этому более мение актуальные данные возвращает. Но придется оборачивать в кеши.