PHP 工具方法

/**
 * Test if the current browser runs on a mobile device (smart phone, tablet, etc.)
 *
 * @return bool true|false
 */
function wp_is_mobile() {
	static $is_mobile;

	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;
};



//get client ip address
function get_real_ip() {
	$ip = false;
	if (! empty ( $_SERVER ["HTTP_CLIENT_IP"] )) {
		$ip = $_SERVER ["HTTP_CLIENT_IP"];
	}
	if (! empty ( $_SERVER ['HTTP_X_FORWARDED_FOR'] )) {
		$ips = explode ( ", ", $_SERVER ['HTTP_X_FORWARDED_FOR'] );
		if ($ip) {
			array_unshift ( $ips, $ip );
			$ip = FALSE;
		}
		for($i = 0; $i < count ( $ips ); $i ++) {
			if (! eregi ( "^(10|172\.16|192\.168)\.", $ips [$i] )) {
				$ip = $ips [$i];
				break;
			}
		}
	}
	return ($ip ? $ip : $_SERVER ['REMOTE_ADDR']);
};




你可能感兴趣的:(PHP 工具方法)