[PHP・jQuery]AndroidスマホとタブレットのUA(ユーザーエージェント)を判断する方法

Web jQuery

ユーザーエージェント判別

しっかり判別!ぴあろ(@iPIARO)です。

AndroidスマホとタブレットのユーザーエージェントをPHPとjQueryで判別する方法。

仕事で必要だったので忘れないために備忘録!

スポンサーリンク

判別方法

Androidのスマホとタブレットの判別方法はMobileという値がユーザーエージェントの中に含まれているかどうかで判別できるそうです。

それを踏まえた上でPHPとjQueryで判断する処理を作成。

PHP

<?php


/* ユーザーエージェント取得 */
$ua = $_SERVER['HTTP_USER_AGENT'];

if (strpos($ua, 'Android') !== false && strpos($ua, 'Mobile') === false){
    echo 'android tablet';
}elseif (strpos($ua, 'Android') !== false && strpos($ua, 'Mobile') !== false){
    echo 'android smartphone';
}

?>

jQuery

<script type="text/javascript">

/* ユーザーエージェント取得 */
var ua = navigator.userAgent;

if((ua.indexOf('Android') > 0 && ua.indexOf('Mobile') == -1)){
    alert('android tablet');
} else if ((ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0)){
    alert('android smartphone');
}

</script>

その他デバイスも含めた判別

iPhone、iPadなども含めたユーザーエージェント判別処理はこちら。

これでどのデバイスからアクセスされたかが分かります。

PHP

<?php

/* ユーザーエージェント取得 */
$ua = $_SERVER['HTTP_USER_AGENT'];

if (strpos($ua, 'Android') !== false && strpos($ua, 'Mobile') === false){
    echo 'android tablet';
}elseif (strpos($ua, 'Android') !== false && strpos($ua, 'Mobile') !== false){
    echo 'android smartphone';
}elseif (strpos($ua, 'iPhone') !== false){
    echo 'iPhone';
}elseif (strpos($ua, 'iPad') !== false){
    echo 'iPad';
}elseif (strpos($ua, 'iPod') !== false){
    echo 'iPod';
}else{
    echo 'iPhone、iPad、iPod、Android以外';
}

?>

jQuery

<script type="text/javascript">

/* ユーザーエージェント取得 */
var ua = navigator.userAgent;

if((ua.indexOf('Android') > 0 && ua.indexOf('Mobile') == -1)){
    alert('android tablet');
}else if ((ua.indexOf('Android') > 0 && ua.indexOf('Mobile') > 0)){
    alert('android smartphone');
}else if (ua.indexOf('iPhone') > 0){
    alert('iPhone');
}else if (ua.indexOf('iPad') > 0){
    alert('iPad');
}else if (ua.indexOf('iPod') > 0){
    alert('iPod');
}else{
    alert('iPhone、iPad、iPod、Android以外');
}

</script>

最後に

iPhoneとiPadはユーザーエージェントがハッキリ分かれているので簡単でしたが、Androidのスマホとタブレットの違いは気付きにくい。
2014年4月時点ではご紹介した方法で判別できそうです。

iPhoneにしかない機能、Androidにしかない機能をWebで表示したい場合などありましたらご活用下さい。

そっけない画面ですが、ユーザーエージェントを表示判別する画面を作りました。
もしよければご使用下さい。

ユーザーエージェント判別画面

余談ですがファブレットと呼ばれるXperia Z Ultraはタブレットではなく、スマートフォン扱いのユーザーエージェントでした。

スポンサーリンク
  • この記事をシェア!
feedlyでフォロー!
follow us in feedly
Twitterをフォロー!
この記事が気に入ったら「いいね!」
最新情報をお届けします!
アプリアン!のLINE公式アカウント登録
LINE@の公式アカウントもよろしくお願いします!
「LINEアプリ起動→設定画面→友だち追加→QRコード」で読み込んで下さい!