【PHP】ユーザーエージェント(User Agent)を取得してデバイスを判別するクラス

PC、iPhone、iPad、Android(スマートフォン)、Android(タブレット)などデバイスごとに振り分ける処理をしたい。

ユーザーエージェント(User Agent)を取得して、デバイスを判別するクラスを作ってみた。

ユーザーエージェント判定クラス

class UserAgent{

	private $ua;
	private $device;

    public function UserAgent(){
        $this->deviceCheck();
    }

	public function deviceCheck(){
		
		//ユーザーエージェント取得
		$this->ua = $_SERVER['HTTP_USER_AGENT'];

		if(strpos($this->ua,'iPhone') !== false){
			//iPhone
			$this->device = 'iphone';
		}
		elseif(strpos($this->ua,'iPad') !== false){
			//iPad
			$this->device = 'ipad';
		}
		elseif((strpos($this->ua,'Android') !== false) && (strpos($this->ua, 'Mobile') !== false)){
			//Android
			$this->device = 'android_m';
		}
		elseif(strpos($this->ua,'Android') !== false){
			//Android
			$this->device = 'android_t';
		}
		else{
			$this->device = 'pc';
		}
	}

	public function getDevice(){
		return $this->device;
	}
}

実行

$ua = new UserAgent();
echo $ua->getDevice();

getDevice()で所得する文字列でデバイスを判別する。

【PHP】ユーザーエージェント(User Agent)を取得してデバイスを判別するクラス” への1件のコメント

  1. ピンバック: Google AdsenceをWordPress内でユーザーエージェント振り分けしてやんよ!!! | ときどきWEB

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

次のHTML タグと属性が使えます: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>