|
5 | 5 | * |
6 | 6 | * [CHANGELOG] |
7 | 7 | * 2021-03-08 -> Class created |
8 | | - * 2021-03-11 -> Added getIP() method |
| 8 | + * 2021-03-19 -> Improved return methods for unknows user agents - this can help to improve the info arrays |
9 | 9 | */ |
10 | 10 |
|
11 | 11 | class Access |
@@ -86,56 +86,45 @@ public function __construct() |
86 | 86 | $this->access['robot'] = $this->getRobot(); |
87 | 87 | $this->access['referer'] = isset($_SERVER['HTTP_REFERER']) ? $_SERVER['HTTP_REFERER'] : "Direct"; |
88 | 88 | $this->access['time'] = time(); |
89 | | - $this->access['ip'] = $this->getIP(); |
| 89 | + return $this; |
90 | 90 | } |
91 | 91 |
|
92 | | - /** Will get the browser */ |
93 | 92 | private function getBrowser() |
94 | 93 | { |
95 | 94 | foreach ($this->browsers as $regex => $name) { |
96 | 95 | if (preg_match($regex, $_SERVER['HTTP_USER_AGENT'])) { |
97 | 96 | return $name; |
98 | 97 | } |
99 | 98 | } |
100 | | - return "Unknown"; |
| 99 | + return "Unknown - " . $_SERVER['HTTP_USER_AGENT']; |
101 | 100 | } |
102 | 101 |
|
103 | | - /** Will get the browser's version */ |
104 | 102 | private function getBrowserVersion() |
105 | 103 | { |
106 | 104 | $data = explode("/", $_SERVER['HTTP_USER_AGENT']); |
107 | 105 | return $data[count($data) - 1]; |
108 | 106 | } |
109 | 107 |
|
110 | | - /** Will get the system's OS */ |
111 | 108 | private function getOS() |
112 | 109 | { |
113 | 110 | foreach ($this->OS as $regex => $name) { |
114 | 111 | if (preg_match($regex, $_SERVER['HTTP_USER_AGENT'])) { |
115 | 112 | return $name; |
116 | 113 | } |
117 | 114 | } |
118 | | - return "Unknown"; |
| 115 | + return "Unknown - " . $_SERVER['HTTP_USER_AGENT']; |
119 | 116 | } |
120 | 117 |
|
121 | | - /** Will check if is a robot */ |
122 | 118 | private function getRobot() |
123 | 119 | { |
124 | 120 | foreach ($this->crawlers as $regex => $name) { |
125 | 121 | if (preg_match($regex, $_SERVER['HTTP_USER_AGENT'])) { |
126 | 122 | return $name; |
127 | 123 | } |
128 | 124 | } |
129 | | - return false; |
| 125 | + return "Unknown - " . $_SERVER['HTTP_USER_AGENT']; |
130 | 126 | } |
131 | 127 |
|
132 | | - /** Will get the IP */ |
133 | | - private function getIP() |
134 | | - { |
135 | | - return isset($_SERVER['HTTP_CLIENT_IP']) ? $_SERVER['HTTP_CLIENT_IP'] : isset($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR']; |
136 | | - } |
137 | | - |
138 | | - /** Return an Array with the collected info */ |
139 | 128 | public function getInfo() |
140 | 129 | { |
141 | 130 | return $this->access; |
|
0 commit comments