Mobile Safari是一款功能非常强大的浏览器,它可以完美地处理我的网站。但是,我的页面上有一些元素可以针对使用此设备进行浏览进行优化;例如,提供小于桌面版本的特定缩略图,以帮助将更多内容放入屏幕。

我想知道如何使用PHP检测Mobile Safari(最好是所有版本),然后我可以提供a)特定的css文件和b)不同大小的图像缩略图。

有帮助吗?

解决方案

将用户代理字符串与Safari Mobile使用的字符串进行比较:

Safari移动用户代理字符串

其他提示

感谢Joe,我读了那页,找到了 WebKit检测库(用JavaScript编写)。我更改了代码以满足我的需求。

对于任何有兴趣的人,这是我的解决方案。

<?php

/* detect Mobile Safari */

$browserAsString = 

感谢Joe,我读了那页,找到了 WebKit检测库(用JavaScript编写)。我更改了代码以满足我的需求。

对于任何有兴趣的人,这是我的解决方案。

<*>SERVER['HTTP_USER_AGENT']; if (strstr($browserAsString, " AppleWebKit/") && strstr($browserAsString, " Mobile/")) { $browserIsMobileSafari = true; } ?>
<*>

这将为您提供用户代理字符串,您可以将其与移动版Safari进行比较。

P.S。 http://wurfl.sourceforge.net/ WURFL可以帮助您确定您想要的UA。

SERVER['HTTP_USER_AGENT']

这将为您提供用户代理字符串,您可以将其与移动版Safari进行比较。

P.S。 http://wurfl.sourceforge.net/ WURFL可以帮助您确定您想要的UA。

我发布了一种新模式来检测任何编程语言(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

Mozilla / 5.0(webOS / 1.0; U; en-US)AppleWebKit / 525.27.1(KHTML,与Gecko一样)版本/ 1.0 Safari / 525.27.1 Pre / 1.0即Palm的浏览器Pre,以及“移动”这个词不存在。

我正在努力使我的检测功能完全适用于所有新功能的浏览器。在看了mytouch,G1,Palm Pre,droid和其他人之后,(但不是全部),我现在相信这对所有新手机都是可行的:

if(preg_match(&quot; / applewebkit / i&quot;,$ _SERVER ['HTTP_USER_AGENT'])&amp;&amp; preg_match(&quot; /(mobile | pre)/ i&quot;,$ _SERVER ['HTTP_USER_AGENT']))     标题(“位置: http://simplefoodie.com/iphone/?carryover= ” ; .urlencode($ _ SERVER [REQUEST_URI]));

<?php

// detect Safari only!

$string = <*>SERVER['HTTP_USER_AGENT'];

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

?>   
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top