Automattic\WPSC\Device_Detection
User_Agent_Info::is_symbian_platform
Detects if the device platform is the Symbian Series 60.
Method of the class: User_Agent_Info{}
No Hooks.
Returns
null. Nothing (null).
Usage
$result = User_Agent_Info::is_symbian_platform( $user_agent );
- $user_agent(string|null)
- User agent string to check. If not provided, uses $_SERVER['HTTP_USER_AGENT'].
Default:null
User_Agent_Info::is_symbian_platform() User Agent Info::is symbian platform code WPSCache 3.1.0
public static function is_symbian_platform( $user_agent = null ) {
$user_agent = self::maybe_get_user_agent_from_server( $user_agent );
if ( empty( $user_agent ) ) {
return false;
}
$agent = strtolower( wp_unslash( $user_agent ) ); // phpcs:ignore WordPress.Security.ValidatedSanitizedInput.InputNotSanitized -- This is validating.
$pos_webkit = strpos( $agent, 'webkit' );
if ( false !== $pos_webkit ) {
// First, test for WebKit, then make sure it's either Symbian or S60.
if ( strpos( $agent, 'symbian' ) !== false || strpos( $agent, 'series60' ) !== false ) {
return true;
} else {
return false;
}
} elseif ( strpos( $agent, 'symbianos' ) !== false && strpos( $agent, 'series60' ) !== false ) {
return true;
} elseif ( strpos( $agent, 'nokia' ) !== false && strpos( $agent, 'series60' ) !== false ) {
return true;
} elseif ( strpos( $agent, 'opera mini' ) !== false ) {
if ( strpos( $agent, 'symbianos' ) !== false || strpos( $agent, 'symbos' ) !== false || strpos( $agent, 'series 60' ) !== false ) {
return true;
}
}
return false;
}