[備忘録]PHPとJavaScriptでユーザーエージェントを振り分けるソースを書いてみる

どうもこんばんは!
今回は今更感がありますが、PCとスマホやタブレットのユーザーエージェントの振り分けるソースを備忘録としてPHPとJavaScriptで書いてみようと思います♪

PHPによるユーザーエージェント振り分け

<?php
  $ua = $_SERVER['HTTP_USER_AGENT'];
  //PCかスマホ・タブレットの識別
 if(strpos($ua,'iPhone') !== false||strpos($ua,'iPad') !== false||strpos($ua,'Android') !== false){
    echo "スマホ・タブレットです。n";
  }else{
    echo "PCです。n";
  }
  //iPhone(iPod)、iPad、Androidの識別
  if(strpos($ua,'iPhone') !== false ){
    echo "iPhoneです。n";
  }else if(strpos($ua,'iPad') !== false ){
    echo "iPadです。n";
  }else if(strpos($ua,'Android') !== false ){
    echo "Androidです。n";
  }
?>

JavaScriptによるユーザーエージェント振り分け

var ua = navigator.userAgent;
	  
//PCかスマホ・タブレットの識別
if(ua.indexOf('iPhone') > 0||ua.indexOf('iPad') > 0||ua.indexOf('Android') > 0){
  document.write("スマホ・タブレットです。n");
}else{
  document.write("PCです。n");		  
}
	  
//iPhone(iPod)、iPad、Androidの識別
if(ua.indexOf('iPhone') > 0){
  document.write("iPhoneです。n");
}else if(ua.indexOf('iPad') > 0){
  document.write("iPadです。n");
}else if(ua.indexOf('Android') > 0){
  document.write("Androidです。n");
}

サンプルページ

どちらもメッセージを表示するだけですが、スマホやタブレットの時だけ特定のCSSやJavaScriptを読み込みたい時やリダイレクトさせたいときに使えそう。レスポンシブデザインが流行っているけど、デバイスによってサイトを分けることもあるだろうし、今後のスマホ・タブレット需要を考えたらスニペット化しておくのも良いかも?

上記のソースは以下のサイト様を参考にさせていただきました。
ユーザーエージェントによってPCとスマートフォン(iPhone / Android)を振り分ける方法いろいろ(PHP / JavaScript / .htaccess等) | HTML5 – CSS3 mag