PHP Judge mobile phone segment login, as well as PHPCMS mobile phone PC dual template call

Source: Internet
Author: User

First, a section of PHP code to determine whether to browse for mobile phone:

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465 6667 functionisMobile(){    // 如果有HTTP_X_WAP_PROFILE则一定是移动设备    if(isset ($_SERVER[‘HTTP_X_WAP_PROFILE‘]))    {        returntrue;    }    // 如果via信息含有wap则一定是移动设备,部分服务商会屏蔽该信息    if(isset ($_SERVER[‘HTTP_VIA‘]))    {        // 找不到为flase,否则为true        returnstristr($_SERVER[‘HTTP_VIA‘], "wap") ? true : false;    }    // 脑残法,判断手机发送的客户端标志,兼容性有待提高    if(isset ($_SERVER[‘HTTP_USER_AGENT‘]))    {        $clientkeywordsarray(‘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‘])))        {            returntrue;        }    }    // 协议法,因为有可能不准确,放到最后判断    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‘))))        {            returntrue;        }    }    returnfalse;}

Create two templates in the Phpcms template file:

The files in the content are PC-side templates, and the files in Content_m are mobile-side templates.

Second, edit the phpcms/modules/content/index.php in Pgpcms

Put the above PHP code in the class of index.

Find all of:

1 includetemplate(‘content‘,$template);

To be replaced by:

1234 if ( $this ->ismobile ()) { &NBSP;&NBSP;&NBSP;&NBSP; include   template ( ' content_m ' $template } else { &NBSP;&NBSP;&NBSP;&NBSP; include   template ( $template

In the end:

1 includetemplate(‘content‘,‘index‘,$default_style);

To be replaced by:

12345 if($this->isMobile()){    includetemplate(‘content_m‘,‘index‘,$default_style);}else{    includetemplate(‘content‘,‘index‘,$default_style);}

  

So far, it's basically set up. When running the index.php file in Phpcms, the synchronization of the mobile phone and the PC-side database is achieved based on whether different templates are called for the phone end.

Forward from http://www.cnblogs.com/cyrfr/p/7194152.html

PHP Judge mobile phone segment login, as well as PHPCMS mobile phone PC dual template call

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.