PHPでPC・スマホ・タブレット・携帯を判別するおすすめの方法

公開日: : 最終更新日:2013/12/21 Web制作

Smartphone
今まさにスマートフォン時代になってきています。
今月のアクセス解析
PHPでPCやスマートフォン、タブレット、携帯を判別してみましょう。

普通の判別法

$_SERVER['HTTP_USER_AGENT']

ユーザーエージェントで対応される方も多いかもしれません。

$UA = $_SERVER['HTTP_USER_AGENT'];
if (ereg("iPhone|iPod|Android.*Mobile|Windows.*Phone", $UA)) {
    // スマートフォン
}else{
}

これだと追加や削除が必要なので面倒です。

良い判別法

php-mobile-detectのライブラリ(MITライセンス)を使いましょう。
更新は最新版をダウンロード→インストールするだけ!

携帯・スマホ判定

function isMobile(){
    require_once('Mobile_Detect.php');
    $detect = new Mobile_Detect;
    $_SESSION['isMobile'] = $detect->isMobile() ? true : false;
    return $_SESSION['isMobile'];
}

PSR+オートローダーを使用する場合の判定法
「MobileDetect.php」にファイル名を変更します。
そして「MobileDetect.php」の2行目にnamespaceを設定します。

呼び出しする関数は以下のように設定します。

    private function isMobile()
    {
        $delect = new MobileDetect;
        $_SESSION['isMobile'] = $delect->isMobile() ? true : false;
        return $_SESSION['isMobile'];
    }

判別法

if($_SESSION['isMobile'] || isMobile()){
    // 携帯・スマホ
} else {
    // それ以外
}

簡単ですね!

Twitter(@R_farms)でブログの更新情報をお伝えしています。
フォローしていただけると嬉しいです!

このカテゴリの記事

PHPのコーディング規則、PSRを学ぶ(5)

PHPのコーディング規則、PSRを学ぶ(4)の続きです。 この記事では、PHPのコーディング規則P

記事を読む

swiftでゲームプログラミング(開始前)

iPhoneアプリを開発するために必要な言語「Swift」 そういえばこれまで適当な書き方で無

記事を読む

ミニ四駆 大会日程まとめ完成

長らくお待たせしました。 ミニ四駆 大会日程まとめが完成しました。 作った理由 これま

記事を読む

cakePHP2.*で簡単にデータベース(database.php)設定を切り替える方法

cakePHP2.0で実験しました。 内容はhttp://blog.imho.jp/2014/05

記事を読む

4e2b692ff41ba051a5c42cac01e133dc

見よう見まねでGitHubでmatomeyomiを公開する

「GitHub」をエンジニア用のSNSと聞いたのではじめてみました。 理由は「他人のコードが見たい

記事を読む

まとめ読み バージョン1.1.0のリリース

フリーソフト「まとめ読み」バージョン1.1.0のリリースを行いました。 まとめ読み ダウンロー

記事を読む

現代PHPの正しい道「PHP: The Right Way」の紹介とその要約

時代遅れの本や情報があふれている。そのため「何年前のコレ?」というコードが広まっている。 私も

記事を読む

まとめ読み(matomeyomi ver 1.0)公開開始

「2ちゃんねるのまとめサイト」のまとめサイトなど、ブログのまとめサイトが作れる、まとめ読み(mato

記事を読む

TechCrunch(英語版)のススメ

「英語」と聞いただけで敬遠する方もいらっしゃるかもしれません。 しかし、「やらないと慣れない」

記事を読む

JavaScriptで特定地域にターゲット広告を表示

ある特定の都道府県だけ表示したい広告を作ったので、そのコードを公開します! 1.Googl

記事を読む

黒い砂漠 KNスキル考察(17/11/16版)

なんかこれしか書いてないので新しく作りました。 黒い砂漠のメイン

swiftでゲームプログラミング(開始前)

iPhoneアプリを開発するために必要な言語「Swift」 そう

黒い砂漠 KN覚醒スキル特化考察(17/07/01)

【現状】 Lv61になったので、PvPでアサシンっぽいことできるよう

iPhoneアプリを開発してみよう

最近ずっとiPhoneアプリで遊んでて、 「なんか頭使うゲームないな

黒い砂漠 KNスキル考察(17/09/01)

黒い砂漠のメインでプレイしているクノイチ(略:KN)のスキルについて考

→もっと見る

PAGE TOP ↑