8

Mobile Safari は非常に有能なブラウザーであり、私の Web サイトをそのまま完全に処理できます。ただし、私のページには、このデバイスを使用してブラウジングするために最適化できる要素がいくつかあります。デスクトップの対応するサムネイルよりも小さい特定のサムネイルを提供して、より多くのコンテンツを画面に収めるのに役立ちます。

PHPを使用してMobile Safari(できればすべてのバージョン)を検出する方法を知りたいので、a)特定のcssファイルとb)異なるサイズの画像サムネイルを提供できます。

4

6 に答える 6

9

Joe に感謝します。そのページを読んで、WebKit 検出ライブラリ(JavaScript) を見つけました。必要に応じてコードを変更しました。

興味のある人のために、これが私の解決策です。

<?php

/* detect Mobile Safari */

$browserAsString = $_SERVER['HTTP_USER_AGENT'];

if (strstr($browserAsString, " AppleWebKit/") && strstr($browserAsString, " Mobile/"))
{
    $browserIsMobileSafari = true;
}

?>
于 2008-10-09T11:12:04.130 に答える
3
$_SERVER['HTTP_USER_AGENT']  

これにより、モバイルサファリと比較できるユーザーエージェント文字列が返されます。

ps http://wurfl.sourceforge.net/ WURFL は、必要な UA を決定するのに役立つ場合があります。

于 2008-10-09T10:57:05.517 に答える
2

ユーザー エージェント文字列を Safari Mobile が使用するものと比較します。

Safari モバイル ユーザー エージェント文字列

于 2008-10-09T10:59:50.270 に答える
0
<?php

// detect Safari only!

$string = $_SERVER['HTTP_USER_AGENT'];

if (strstr($string, " AppleWebKit/") && strstr($string, " Safari/") && !strstr($string, " CriOS"))
    {
        echo 'See in Safari only';
    }

?>   
于 2013-06-17T09:25:08.220 に答える
0

任意のプログラミング言語 (JSP、PHP、Perl、Python .....) でデバイスを検出する新しいモードを公開しました。これは Apache Mobile Filter と呼ばれ、Apache モジュールです ( http://modules.apache.org/search. php?id=1787 ) を使用して、モバイル デバイスを検出し、画像をデバイスの画面サイズに適応させることもできます。

詳細情報: http://www.idelfuschini.it/it/apache-mobile-filter-v2x.html

于 2009-11-20T14:27:55.857 に答える
0

Mozilla/5.0 (webOS/1.0; U; en-US) AppleWebKit/525.27.1 (Gecko のような KHTML) バージョン/1.0 Safari/525.27.1 Pre/1.0 は Palm Pre 用のブラウザであり、「Mobile ' そこにいない。

私は、すべての新しい対応ブラウザで検出を完全に機能させることに取り組んでいます。mytouch、G1、Palm Pre、droid など (すべてではありませんが) を調べた結果、すべての新しい携帯電話でこれが機能すると確信しています。

if(preg_match("/applewebkit/i", $_SERVER['HTTP_USER_AGENT']) && preg_match("/(mobile|pre)/i", $_SERVER['HTTP_USER_AGENT'])) header("場所: http:/ /simplefoodie.com/iphone/?carryover= ".urlencode($_SERVER[REQUEST_URI]));

于 2009-12-16T18:47:07.250 に答える