แนวทางการตรวจสอบชนิดอุปกรณ์ที่เข้ามายังเว็บไซต์ของเราด้วย PHP
การตรวจสอบอุปกรณ์ที่ผู้ใช้งาน หรือ User ใช้เข้ามายังเว็บไซต์ของเราจำเป็นอย่างยิ่งในยุคที่เราต้องแข่งขันกัน เพื่อเราจะได้เก็บข้อมูลความสนใจของผู้ใช้งาน และเก็บเป็นข้อมูลรายงานเพื่อปรับปรุงเว็บไซต์ของเราให้เหมาะสมกับอุปกรณ์ แต่ละขนาดหน้าจอที่มีความละเอียดไม่เท่ากัน โดยลำดับความสำคัญจากความสนใจนี้ได้ และนอกจากการใช้เพื่อเก็บเป็นข้อมูลรายงานแล้ว ในด้านของการเขียนโปรแกรมก็จำเป็นที่จะต้องใช้อย่างมาก ยกตัวอย่างหากเว็บไซต์ SiamHTTP มี 2 เวอร์ชั่น คือ เป็นเวอร์ชั่นสำหรับเครื่อง PC หรือ Notebook ซึ่งมีความละเอียดหน้าจอที่กว้าง กับเวอร์ชั่นสำหรับมือถือ หรือสมาร์ทโฟน เราก็จะทำการตรวจสอบอุปกรณ์ของ User ก่อนว่าใช้อุปกรณ์อะไรในการเข้ามายังเว็บไซต์ของเรา แล้วเขียนโปรแกรมเพื่อเปลี่ยนเส้นทาง URL หรือ Redirect ไปยังหน้าเว็บแอพพลิเคชั่นสำหรับแต่ละอุปกรณ์ที่เราได้เขียนโปรแกรมไว้แล้ว เท่านี้ก็หมดปัญหาสำหรับการแสดงผล ซึ่งเหมาะสำหรับคนที่ไม่ชอบเว็บไซต์แบบ Responsive เราก็จัดการแยกมันซะเลย @@
สร้างตัวแปร Array เก็บค่า ชนิดอุปกรณ์โดยใช้ "HTTP_USER_AGENT"
1
2
3
4
5
| $devicesTypes = array ( "computer" => array ( "msie 10" , "msie 9" , "msie 8" , "windows.*firefox" , "windows.*chrome" , "x11.*chrome" , "x11.*firefox" , "macintosh.*chrome" , "macintosh.*firefox" , "opera" ), "tablet" => array ( "tablet" , "android" , "ipad" , "tablet.*firefox" ), "mobile" => array ( "mobile " , "android.*mobile" , "iphone" , "ipod" , "opera mobi" , "opera mini" ), "bot" => array ( "googlebot" , "mediapartners-google" , "adsbot-google" , "duckduckbot" , "msnbot" , "bingbot" , "ask" , "facebook" , "yahoo" , "addthis" )); |
สร้าง Function ไว้ตรวจสอบชนิดอุปกรณ์
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
|
function detectDevice(){ $userAgent = $_SERVER [ "HTTP_USER_AGENT" ]; $devicesTypes = array ( "computer" =--> array ( "msie 10" , "msie 9" , "msie 8" , "windows.*firefox" , "windows.*chrome" , "x11.*chrome" , "x11.*firefox" , "macintosh.*chrome" , "macintosh.*firefox" , "opera" ), "tablet" => array ( "tablet" , "android" , "ipad" , "tablet.*firefox" ), "mobile" => array ( "mobile " , "android.*mobile" , "iphone" , "ipod" , "opera mobi" , "opera mini" ), "bot" => array ( "googlebot" , "mediapartners-google" , "adsbot-google" , "duckduckbot" , "msnbot" , "bingbot" , "ask" , "facebook" , "yahoo" , "addthis" )); foreach ( $devicesTypes as $deviceType => $devices ) { foreach ( $devices as $device ) { if (preg_match( "/" . $device . "/i" , $userAgent )) { $deviceName = $deviceType ; } } } return ucfirst( $deviceName ); } ?>
|
;?>
สมัครสมาชิก:
บทความ
(
Atom
)
ไม่มีความคิดเห็น :
แสดงความคิดเห็น