Code PHP kiểm tra trang web đang được mở bằng điện thoại hay máy tính
Có những ứng dụng bạn chỉ muốn chạy trên trình duyệt của máy tính hoặc của điện thoại mà thôi, vậy cách làm như thế nào?
Sau đây là đoạn code giúp bạn kiểm tra xem người dùng đang mở web bằng trình duyệt của máy tính hay trình duyệt của điện thoại.
Tạo Function kiểm tra điện thoại hay máy tính
Tạo Function với nội dung như sau. Lưu với tên bất kỳ có đuôi mở rộng *.php
function svl_ismobile() { $is_mobile = '0'; if(preg_match('/(android|iphone|ipad|up.browser|up.link|mmp|symbian|smartphone|midp|wap|phone)/i', strtolower($_SERVER['HTTP_USER_AGENT']))) $is_mobile=1; if((strpos(strtolower($_SERVER['HTTP_ACCEPT']),'application/vnd.wap.xhtml+xml')>0) or ((isset($_SERVER['HTTP_X_WAP_PROFILE']) or isset($_SERVER['HTTP_PROFILE'])))) $is_mobile=1; $mobile_ua = strtolower(substr($_SERVER['HTTP_USER_AGENT'],0,4)); $mobile_agents = array('w3c ','acs-','alav','alca','amoi','andr','audi','avan','benq','bird','blac','blaz','brew','cell','cldc','cmd-','dang','doco','eric','hipt','inno','ipaq','java','jigs','kddi','keji','leno','lg-c','lg-d','lg-g','lge-','maui','maxo','midp','mits','mmef','mobi','mot-','moto','mwbp','nec-','newt','noki','oper','palm','pana','pant','phil','play','port','prox','qwap','sage','sams','sany','sch-','sec-','send','seri','sgh-','shar','sie-','siem','smal','smar','sony','sph-','symb','t-mo','teli','tim-','tosh','tsm-','upg1','upsi','vk-v','voda','wap-','wapa','wapi','wapp','wapr','webc','winw','winw','xda','xda-'); if(in_array($mobile_ua,$mobile_agents)) $is_mobile=1; if (isset($_SERVER['ALL_HTTP'])) { if (strpos(strtolower($_SERVER['ALL_HTTP']),'OperaMini')>0) $is_mobile=1; } if (strpos(strtolower($_SERVER['HTTP_USER_AGENT']),'windows')>0) $is_mobile=0; return $is_mobile; }
Kết quả
Để kiểm tra function ta viết thêm dòng này vào cuối file ta vừa tạo để hiển thị kết quả
if(svl_ismobile()){ echo "Bạn đang dùng điện thoại"; }else{ echo "Bạn đang dùng máy tính"; }
Tham khảo:
- https://php.net/manual/en/function.get-browser.php
- https://erikastokes.com/php/how-to-test-if-a-browser-is-mobile.php
Chúc các bạn thành công!