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

Web・ブログのこと jQuery
スポンサーリンク

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

しっかり判別!カズヤ(@kazumiso_s)です。

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はタブレットではなく、スマートフォン扱いのユーザーエージェントでした。

スポンサーリンク

この記事は私が書きました。

管理人:カズヤ(@kazumiso_s)

31歳、横浜市在住の2児の父。本業はシステムエンジニアで目標は今の会社で取締役になること。「毎日に価値を見出す」ことを信念に置き、未来に役立つ情報を発信しています。「好酸球性副鼻腔炎」という難病かもしれない?嗅覚障害持ち。最近生まれて初めて坊主にした。詳細なプロフィールはこちらから

この記事をシェアはこちらから。

フォローして頂けるとブログの更新情報をお届けできます。

この記事が気に入ったら「いいね!」
最新情報をお届けします。

もう1記事いかがですか。