-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathmobile.php
128 lines (105 loc) · 4.1 KB
/
mobile.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
<?php
/**
* @author Chathula Sampath <[email protected]>
* @copyright 2014 || SLTUTS
* @license http://www.php.net/license/3_01.txt PHP License 3.01
* @link http://sltuts.com || http://fb.com/c.sampathperera || http://twitter.com/ChathulaC
*/
class Mobile {
protected $device;
protected $mobile;
public $isMobile = false;
public $isAndroid = false;
public $isBlackberry = false;
public $isIphone = false;
public $isIpod = false;
public $isIpad = false;
public $isOperaMini = false;
public $isPalm = false;
public $isWindows = false;
public $isOther = false;
public $isMozilla = false;
protected $devices = array(
"android",
"blackberry",
"iphone",
"ipod",
"ipad",
"avantgo",
"blazer",
"elaine",
"hiptop",
"palm",
"plucker",
"xiino",
"windows ce",
"iemobile",
"ppc",
"smartphone",
"opera mini",
"kindle",
"mobile",
"mmp",
"midp",
"o2",
"pda",
"pocket",
"psp",
"symbian",
"smartphone",
"treo",
"up.browser",
"up.link",
"vodafone",
"wap",
);
public function __construct() {
$this->device = isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : "";
if (isset($_SERVER['HTTP_X_WAP_PROFILE'])|| isset($_SERVER['HTTP_PROFILE'])) {
$this->isMobile = true;
}
foreach ($this->devices as $device) {
$this->mobile = $device;
}
if (preg_match("/". $this->mobile ."/", $this->device)) {
$this->isMobile = true;
}
if (stristr($this->device, "android")) {
$this->isMobile = true;
$this->isAndroid = true;
}
if (stristr($this->device, "blackberry")) {
$this->isMobile = true;
$this->isBlackberry = true;
}
if (stristr($this->device, "iphone")) {
$this->isMobile = true;
$this->isIphone = true;
}
if (stristr($this->device, "ipod")) {
$this->isMobile = true;
$this->isIpod = true;
}
if (stristr($this->device, "ipad")) {
$this->isMobile = true;
$this->isIpad = true;
}
if (stristr($this->device, "opera mini")) {
$this->isMobile = true;
$this->isOperaMini = true;
}
if (preg_match("/avantgo|blazer|elaine|hiptop|palm|plucker|xiino/", $this->device)) {
$this->isMobile = true;
$this->isPalm = true;
}
if (preg_match("/iemobile|ppc|smartphone|windows ce/", $this->device)) {
$this->isMobile = true;
$this->isWindows = true;
}
if (preg_match("/kindle|mobile|mmp|midp|o2|pda|pocket|psp|symbian|smartphone|treo|up.browser|up.link|vodafone|wap/", $this->device)) {
$this->isMobile = true;
$this->isOther = true;
}
}
}
?>