2010-11-14 11 views
18

Mögliche Duplizieren erhalten:
Getting the screen resolution using PHP, wie Benutzer-Bildschirmauflösung mit PHP

auch die Frage ist selbsterklärend

wo ich erreichen wollen

ist
$width = ; //user screen width in here 

F1! F1!

+0

Obwohl Sie die Auflösung der Umgebung des Benutzers nicht genau erkennen können, aber basierend auf der User Agent-Zeichenfolge, können Sie mit angemessener Genauigkeit die Klasse (mobil/Tablet/Desktop) des verwendeten Geräts erraten. Schauen Sie sich http://mobiledetect.net/ an. – bds

Antwort

40

Sie benötigen JavaScript, nicht PHP.

var screenWidth = window.screen.width, 
    screenHeight = window.screen.height; 

Sie können es dann über Ajax an den Server senden (mit einem XmlHttpRequest).

Siehe auch die MDC window.screen docs.

+0

können Sie einen Beispielcode teilen, um ihn über AJAX an die PHP-Variable zu senden? – Faizan

9

Sie können nicht, nicht in PHP. PHP ist streng serverseitig.

+4

meine Güte .... warum vergesse ich diese Tatsache .... – Moon

+1

HI, ich verstehe. Aber Informationen wie Browsertyp, Anbieter und bevorzugte Sprachen etc., auf die wir von '$ _SERVER'-Variable zugreifen können. Zum Beispiel: '$ _SERVER ['HTTP_ACCEPT_LANGUAGE']' so für Sprache. Obwohl es serverseitige Sprache und Ausführung ist, können wir trotzdem Informationen vom Client erhalten. Ich frage mich, die Bildschirmgröße sollte auch zur Verfügung gestellt werden, aber ich weiß, es ist nicht in der aktuellen Generation möglicherweise in Zukunft können sie hinzufügen. @ Femaref – sun

+0

Das sind HTTP-Header. Http wird verwendet, um auf Webseiten zuzugreifen, aber das ist nicht das einzige, was es tut. Es ist ein Standard für die Datenübertragung, so dass Dinge wie der Bildschirm Platz (was ist ein Anliegen, nachdem die Daten am Client ist kosmetisch) hat keinen Platz in der http-Standard. – Femaref

5

Sie können es nicht serverseitig bekommen, Sie müssen es Client-Seite mit Javascript mit innerWidth bekommen. Sie können es bei Bedarf mit AJAX an die Server-Seite übergeben.

+0

warum negativ? es ist so wichtig wie die angenommene Antwort, und ich habe vor Matt geantwortet. –

+3

ok, so funktioniert innerWidth im IE bis IE9 nicht. habe das vergessen. Ich werde meinen Downvote nehmen und jetzt den Mund halten. –

2

Sie können JavaScript verwenden. Holen Sie sich den Bildschirm des Benutzers, senden Sie es an den Server und erhalten Sie es per PHP.

+0

können Sie ein Beispiel für das Senden von Daten an den Server php-Datei über Ajax? – Faizan