When doing web development, you often need to use page matching for mobile devices. Of course, you can directly make the website responsive, but if you don’t want to do this, you can use PHP to determine the device type and then display the corresponding interface. and content. Today I will share a method of using PHP to determine whether the device is a mobile phone/tablet. The method comes from WordPress (wp-includes/vars.php:125) and is suitable for most types of mobile phones/tablets:
- /**
- * Test if the current browser runs on a mobile device (smart phone, tablet, etc.)
- *
- * @staticvar bool $is_mobile
- *
- * @return bool
- */
- function wp_is_mobile() {
- static $is_mobile = null;
-
- if ( isset( $is_mobile ) ) {
- return $is_mobile;
- }
-
- if ( empty($_SERVER['HTTP_USER_AGENT']) ) {
- $is_mobile = false;
- } elseif ( strpos($_SERVER['HTTP_USER_AGENT'], 'Mobile') !== false // many mobile devices (all iPhone, iPad, etc.)
- || strpos($ _SERVER['HTTP_USER_AGENT'], 'Android') !== false
- || strpos($_SERVER['HTTP_USER_AGENT'], 'Silk/') !== false
- || strpos($_SERVER['HTTP_USER_AGENT'], 'Kindle') !== false
- || strpos($_SERVER['HTTP_USER_AGENT'], 'BlackBerry') !== false
- || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mini') !== false
- || strpos($_SERVER['HTTP_USER_AGENT'], 'Opera Mobi') !== false ) {
- $is_mobile = true;
- } else {
- $is_mobile = false;
- }
-
- return $is_mobile;
- }
Copy code
|