Ciao esistono tanti tipi di dispositivi con schermi, sistemi operativi e problematiche diverse.
Io in genere incrocio le informazioni che provengono dalla richiesta http, esempio: $browser = $_SERVER['HTTP_USER_AGENT']; per recuperare informazioni sul browser utilizzato, inoltre con javascript puoi identificare la risoluzione dello schermo (screen.width e screen.height) e cosi via
e mi creo delle casistiche che evidenziano un dispositivo mobile