ホーム » Linux » PEAR:Net_Useragent_Mobile

PEAR:Net_Useragent_Mobile


--- 広告 ---
--- 広告 ---

PEAR:Net_Useragent_MobileだけではiPhoneやAndroidに対応できないので、googleで検索してみました。

携帯サイトプランスタート。iPhoneと Androidを PHPで振り分ける方法を参考にさせていただきました。感謝。

それぞれのAgent情報を調べれば分かります。まずは、iPhoneの場合(私の場合は iPod touchですが・・)

    Mozilla/5.0 (iPod; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Version/4.0 Mobile/7A341 Safari/528.16 

つい先日配布された iPhone OS 3.0をインストールした状態でのエージェント情報は上記のようになっています。Safariとか AppleWebKitというキーワードもありますが、「iPhone」というそのもののキーワードがあるので、これが使えます。

続いて Androidの場合、こちらは先日の Google Developer Dayでいただいた端末を利用して見ました。

    Mozilla/5.0 (Linux; U; Android 1.5; en-us; GDDJ-09 Build/CDB56) AppleWebKit/528.5+ (KHTML, like Build/CDB56) AppleWebKit/528.5+ (KHTML, like Gecko) Version/3.1.2 Mobile Safari/525.20. 

こちらにも、「Android」というキーワードが入っていますので、これで判別が出来ます。

ということで、例えばここではざっくりと「PCの場合、ケータイの場合、iPhoneの場合、Androidの場合」で振り分けをしてみましょう。

    // PEARをインストールした後、読み込みます
    require_once 'Net/UserAgent/Mobile.php';
    $agent = Net_UserAgent_Mobile::singleton();

    // iPhone
    if (strpos($_SERVER['HTTP_USER_AGENT'], 'iPhone') !== false) {
    	// iPhoneの場合
    } else if (strpos($_SERVER['HTTP_USER_AGENT'], 'Android') !== false) {
    	// Androidの場合
    } else if ($agent->isNonMobile()) {
           // PCの場合
    } else {
          // モバイルの場合
    }

モバイルの場合は、さらに細かくキャリアなどで分けていくと良いでしょう。詳しくは、PEAR:Net_UserAgent_Mobileのドキュメントをご参照くださいませ。
--- 広告 ---
--- 広告 ---

 

この記事に関連する記事一覧

目 次
最近の投稿
--- 広告 ---
--- 広告 ---
お問い合わせ