How to detect if iPhone has retina display or not?

2019-05-01 05:00发布

How can I detect if an iPhone has a retina display or not? Is there a reliable way? Either pure PHP or preferably Zend Framework way of doing this.

4条回答
别忘想泡老子
2楼-- · 2019-05-01 05:06

i figure it out by this

var retina = window.devicePixelRatio > 1;

if (retina)
{
    // the user has a retina display
}
else
{
    // the user has a non-retina display
}
查看更多
Deceive 欺骗
3楼-- · 2019-05-01 05:11

You must consider the fact that you are trying to get client side information on the server side.

It would seem that you are unable to detect the display with pure PHP or Zend framework.

It furthermore seems like the UserAgent information from the client, that you might access from PHP is based upon the OS, not the hardware, and thusly does not help you.

You might be interested in reading the following article which much more eloquently and thoroughly explains the issues.

http://www.bdoran.co.uk/2010/07/19/detecting-the-iphone4-and-resolution-with-javascript-or-php/

Good luck!

查看更多
Summer. ? 凉城
4楼-- · 2019-05-01 05:17

I guess as simple thing as display width detection would be sufficient for such a task, retina display packs so many pixels in the width, that simple check will immediately tell you if its an ordinary display or retina display. PHP does not have such a capability out of a box, but Javascript does.

Here is how :

<script language="Javascript">     
<!--     
document.write('<br>your resolution is' + screen.width + 'x' + screen.height)     
//-->     
</script> 
查看更多
手持菜刀,她持情操
5楼-- · 2019-05-01 05:21

Javascript: window.devicePixelRatio

查看更多
登录 后发表回答