Rolf B: Viewportgröße mit PHP ermitteln

Beitrag lesen

Hallo Dieter,

nein. PHP läuft auf deinem Server, nicht im Browser, und kann daher generell nicht auf Informationen des Browsers zugreifen.

Ausnahme sind nur die Informationen, die der Browser an den Server sendet. Das sind zum einen die HTTP Request Header, zum anderen Daten, die aus einem Form, einem Link oder mit einem AJAX-Request als Parameter gesendet werden.

Für die Viewportgröße kannst Du mit JavaScript die Größe bestimmen und sie dann, beispielsweise als hidden input in einem Form, mit zum Server senden.

Beachte nur, dass die Viewportgröße keine Konstante ist. Der Anwender kann jederzeit die Fenstergröße verändern (außer auf einem Handy oder einer Smartwatch). Wenn Du also vorhast, am Server die Größe von HTML Elementen zu bestimmen, oder für "Handy-Ansicht" und "Desktop-Ansicht" unterschiedliches HTML zu generieren - nein, falscher Ansatz.

Die Größe von HTML Elementen bestimmt der Browser, und du unterstützt ihn dabei mit CSS. Genauso schaltest du zwischen schmalen und breiten Ansichten um. Der Server liefert das HTML, und per CSS entscheidest Du, was wie angezeigt wird. Das Stichwort dazu heißt Responsive Webdesign.

Das stößt an die Grenzen, wenn die Handy-Ansicht sich massiv von der Desktop-Ansicht unterscheiden soll. Wenn der Desktop deutlich mehr Daten anzeigen soll. In dem Fall würde ich aber eher einen Link auf der Seite empfehlen, um auf die jeweils andere Ansicht umzuschalten (analog der mobilen Ansicht in der Wikipedia).

Rolf

--
sumpsi - posui - obstruxi