Очень часто возникает необходимость определить общий тип устройства, с которого пользователь зашёл на сайт, а так же размер экрана (дисплея) этого устройства; в первую очередь это нужно для того, что бы система могла определить, какую страницу выдавать "клиенту", так как содержимое мобильных страниц обычно отличается от страниц, отображаемых компьютером: на них, как правило, выводится только основной контент, нет боковых модулей с дополнительной информацией, установлено собственное мобильное меню и так далее...
Статья подготовлена для студентов курса «Backend-разработчик на PHP» в образовательном проекте OTUS. По виду типизации, языки программирования делятся на языки с динамической (dynamic typing) и статической типизацей (static typing). Статическая типизация — когда тип переменной точно известен в compile-time, например в Clang int a = 1; и в run-time тип переменной «a» может быть только integer. С динамической типизацией попроще. Тип переменной выводится в run-time, например, в PHP $a = 1; и в run-time переменная «$a» может быть числом 1 или даже строкой «string»...