ユーザーエージェント(User Agent)情報 解析/まとめ
- Gecko が含まれる => iPhone, Android, IE11、Edge, Chrome, Firefox, Safari
- Gecko が含まれない => IE6〜10、ガラケー他
- Android が含まれる => Android製品
- X11 が含まれる => X11
- iPhone, ipod, ipad が含まれる => Apple製品
目的
「cssやjavascriptが一切使えないガラケー」向けに作られたサイトがある。
ガラケーからのアクセスはもはやほとんど無い。
そこにスマホ対応としてcssを書きたいがガラケーには一切影響が無いようにしたい。
ガラケーでは<script>タグ
やcss
がそのまま平文として表示される可能性がある。
auのガラケーならページが真っ白になるかも。
cssに苦しめられるIE6〜10について、今から着手するならIE11以外はサポート終了と考えて良さそう。(vistaも来年までか。)
判定
- ユーザエージェント | サービス・機能 | NTTドコモ フルブラウザ
P01Gは
Mozilla/5.0 (P01G;FOMA;like Gecko)
function is_gecko() {
if (strpos($_SERVER['HTTP_USER_AGENT'], "Gecko") === false) {
return false;
}
// FOMAのフルブラウザを除外
if (strpos($_SERVER['HTTP_USER_AGENT'], ";FOMA;") !== false) {
return false;
}
return true;
}
function is_apple() {
return preg_match('/iPhone|iPod|iPad|Macintosh/', $_SERVER['HTTP_USER_AGENT']);
}
iPhoneでoptionの文字列が長すぎて表示しきれない場合用
<select>
...
<?php if(is_apple()) : ?>
<optgroup label=""></optgroup>
<?php endif; ?>
</select>
X11
Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:47.0) Gecko/20100101 Firefox/47.0
Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36
w3m(linux)
w3m/0.5.3+git20151119