ホームページ バックエンド開発 PHPチュートリアル PHP は、訪問者がモバイルブラウザ経由でアクセスしているかどうかを判断します。 PHP ブラウザ情報 PHP ブラウザを開く PHP は、WeChat の閲覧を判断します。

PHP は、訪問者がモバイルブラウザ経由でアクセスしているかどうかを判断します。 PHP ブラウザ情報 PHP ブラウザを開く PHP は、WeChat の閲覧を判断します。

Jul 29, 2016 am 08:50 AM
php ブラウザ

この記事は、MaNong.com の Xiaofeng によって書かれたものです。転載については、記事の最後にある転載要件をお読みください。有料投稿プランへの参加を歓迎します。

今日は、PHP コードの一部を共有したいと思います。このコードの機能は、訪問者がモバイル ブラウザーを介してアクセスしているかどうかを判断することです。モバイル ブラウザから HTTP_X_WAP_PROFILE、HTTP_VIA、HTTP_USER_AGENT などの情報を介して PHP Web サイトにアクセスします。以下は PHP コードです:

/**
 * 是否移动端访问访问
 *
 * @return bool
 */
function isMobile()
{ 
    // 如果有HTTP_X_WAP_PROFILE则一定是移动设备
    if (isset ($_SERVER['HTTP_X_WAP_PROFILE']))
    {
        return true;
    } 
    // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息
    if (isset ($_SERVER['HTTP_VIA']))
    { 
        // 找不到为flase,否则为true
        return stristr($_SERVER['HTTP_VIA'], "wap") ? true : false;
    } 
    // 脑残法,判断手机发送的客户端标志,兼容性有待提高
    if (isset ($_SERVER['HTTP_USER_AGENT']))
    {
        $clientkeywords = array ('nokia',
            'sony',
            'ericsson',
            'mot',
            'samsung',
            'htc',
            'sgh',
            'lg',
            'sharp',
            'sie-',
            'philips',
            'panasonic',
            'alcatel',
            'lenovo',
            'iphone',
            'ipod',
            'blackberry',
            'meizu',
            'android',
            'netfront',
            'symbian',
            'ucweb',
            'windowsce',
            'palm',
            'operamini',
            'operamobi',
            'openwave',
            'nexusone',
            'cldc',
            'midp',
            'wap',
            'mobile'
            ); 
        // 从HTTP_USER_AGENT中查找手机浏览器的关键字
        if (preg_match("/(" . implode('|', $clientkeywords) . ")/i", strtolower($_SERVER['HTTP_USER_AGENT'])))
        {
            return true;
        } 
    } 
    // 协议法,因为有可能不准确,放到最后判断
    if (isset ($_SERVER['HTTP_ACCEPT']))
    { 
        // 如果只支持wml并且不支持html那一定是移动设备
        // 如果支持wml和html但是wml在html之前则是移动设备
        if ((strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') !== false) && (strpos($_SERVER['HTTP_ACCEPT'], 'text/html') === false || (strpos($_SERVER['HTTP_ACCEPT'], 'vnd.wap.wml') < strpos($_SERVER['HTTP_ACCEPT'], 'text/html'))))
        {
            return true;
        } 
    } 
    return false;
}
ログイン後にコピー

このコードは比較的完成しています。興味のある学生は、さらにテストを行うことができます。バグがある場合は、コメントに残してください。

上記では、訪問者がモバイル ブラウザ経由でアクセスしているかどうかを判断するための PHP について、PHP とブラウザのコンテンツを含めて紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットな記事タグ

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド Dec 24, 2024 pm 04:42 PM

Ubuntu および Debian 用の PHP 8.4 インストールおよびアップグレード ガイド

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法 Dec 20, 2024 am 11:31 AM

PHP 開発用に Visual Studio Code (VS Code) をセットアップする方法

セサミオープンドア公式ウェブサイトセサミオープンドアアプリ最新のウェブサイト セサミオープンドア公式ウェブサイトセサミオープンドアアプリ最新のウェブサイト Feb 28, 2025 am 11:18 AM

セサミオープンドア公式ウェブサイトセサミオープンドアアプリ最新のウェブサイト

PHPでHTML/XMLを解析および処理するにはどうすればよいですか? PHPでHTML/XMLを解析および処理するにはどうすればよいですか? Feb 07, 2025 am 11:57 AM

PHPでHTML/XMLを解析および処理するにはどうすればよいですか?

セサミオープンドア公式ウェブサイト入り口の最新バージョンの公式ウェブサイトリンクアドレス入り セサミオープンドア公式ウェブサイト入り口の最新バージョンの公式ウェブサイトリンクアドレス入り Feb 28, 2025 am 11:21 AM

セサミオープンドア公式ウェブサイト入り口の最新バージョンの公式ウェブサイトリンクアドレス入り

母音を文字列にカウントするPHPプログラム 母音を文字列にカウントするPHPプログラム Feb 07, 2025 pm 12:12 PM

母音を文字列にカウントするPHPプログラム

gate.ioセサミドアダウンロード中国のチュートリアル gate.ioセサミドアダウンロード中国のチュートリアル Feb 28, 2025 am 10:54 AM

gate.ioセサミドアダウンロード中国のチュートリアル

セサミオープンドア交換公式ウェブサイトgate.io交換公式ウェブサイトの入り口 セサミオープンドア交換公式ウェブサイトgate.io交換公式ウェブサイトの入り口 Feb 28, 2025 am 10:45 AM

セサミオープンドア交換公式ウェブサイトgate.io交換公式ウェブサイトの入り口

See all articles