携帯電話かパソコンのどちらで閲覧しているかを判断する方法
デバイスごとに異なるページを表示したい
IPを特定しますか? ? ? 2 つの IP セグメントとは何ですか~~~
それともブラウザの種類を判断しますか? ? ?ブラウザが多すぎるようです~~~
-----解決策--------------------------- -----
絶対的な方法では区別できません。
以下の機能が用意されており、意図的な混乱がなければ成功率は99%以上です~
function isMobile() {<br /> if(isset($_SERVER['HTTP_X_WAP_PROFILE'])){<br /> return TRUE;<br /> }<br /> <br /> if(isset($_SERVER['HTTP_VIA']) && stristr($_SERVER['HTTP_VIA'], "wap")){<br /> return TRUE;<br /> }<br /> <br /> if(isset($_SERVER['HTTP_USER_AGENT'])){<br /> $clientkeywords = array('nokia', 'sony', 'ericsson', 'mot', 'samsung', 'htc', 'sgh', 'lg', 'sharp', 'sie-',<br /> 'philips', 'panasonic', 'alcatel', 'lenovo', 'iphone', 'ipod', 'blackberry', 'meizu', 'android', 'netfront', 'symbian',<br /> 'ucweb', 'windowsce', 'palm', 'operamini', 'operamobi', 'openwave', 'nexusone', 'cldc', 'midp', 'wap', 'mobile');<br /> if(preg_match("/(" . implode('<br><font color='#FF8000'>------解决方案--------------------</font><br>', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT']))){<br /> return TRUE;<br /> }<br /> }<br /> <br /> if(isset($_SERVER['HTTP_ACCEPT'])){<br /> if((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false)<br /> && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false<br /> <br><font color='#FF8000'>------解决方案--------------------</font><br> (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html')))){<br /> return TRUE;<br /> }<br /> }<br /> <br /> return FALSE;<br /> }