PHP检测用户语言的方法

本文实例讲述了PHP检测用户语言的方法。分享给大家供大家参考。具体如下:

function getPreferredLanguage() {
 $langs = array();
 if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) {
  // break up string into pieces (languages and q factors)
  preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)\s*(;\s*q\s*=\s*(1|0\.[0-9]+))?/i',$_SERVER['HTTP_ACCEPT_LANGUAGE'], $lang_parse);
  if (count($lang_parse[1])) {
   // create a list like "en" => 0.8
   $langs = array_combine($lang_parse[1], $lang_parse[4]);
   // set default to 1 for any without q factor
   foreach ($langs as $lang => $val) {
    if ($val === '') $langs[$lang] = 1;
   }
   // sort list based on value
   arsort($langs, SORT_NUMERIC);
  }
 }
 //extract most important (first)
 foreach ($langs as $lang => $val) { break; }
 //if complex language simplify it
 if (stristr($lang,"-")) {$tmp = explode("-",$lang); $lang = $tmp[0]; }
 return $lang;
}

希望本文所述对大家的php程序设计有所帮助。

(0)

相关推荐

  • php实现获取及设置用户访问页面语言类

    本文实例讲述了php实现获取及设置用户访问页面语言类,分享给大家供大家参考.具体分析如下: 该实例User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language.根据用户选择的语言显示对应的页面(英文,简体中文,繁体中文) UserLang.class.php类文件如下: <?php /** User Language Class 获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language *

  • PHP中使用gettext来支持多语言的方法

    我们今天用一个简单的实例说明一下在PHP中的getText的用法(getText是一系列的工具和库函数,帮助程序员和翻译人员开发多语言软件的), 从而实现PHP的i18n. 现在, 我们假设要显示一个返回主页的link: 复制代码 代码如下: //home.php: $str = 'home'; print <<<HTML <a href="#">{$str}</a> HTML; 下面开启我们多语言的开发之旅: 创建pot文件,pot是Port

  • php根据用户语言跳转相应网页

    当来访者浏览器语言是中文就进入中文版面,国外的用户默认浏览器不是中文的就跳转英文页面. <?php $lan = substr( $HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == "zh-cn") print("<meta http-equiv='refresh' content = '0;URL = gb/index.htm'>"); else print("<meta http-equiv='ref

  • Thinkphp搭建包括JS多语言的多语言项目实现方法

    本文实例讲述了Thinkphp搭建包括JS多语言的多语言项目实现方法.分享给大家供大家参考.具体实现方法如下: 一.问题: 项目需要开发英文版,于是需要搭建多语言项目. 项目使用Thinkphp框架,隐约记得Thinkphp有多语言设置,翻看了帮助手册,果然有,这就边实验边开始: 二.实现方法: Thinkphp采用app_begain来检测和切换语言包,语言包和项目相关,构架等都比较简单,具体的这里:http://www.thinkphp.cn/info/188.html 搭建好了,就可以使用

  • thinkphp实现多语言功能(语言包)

    1.在Home(你取的项目名)的config.php中添加如下配置 复制代码 代码如下: <?phpreturn array(    //'配置项'=>'配置值'        'LANG_SWITCH_ON'     =>     true,    //开启语言包功能                'LANG_AUTO_DETECT'     =>     true, // 自动侦测语言        'DEFAULT_LANG'         =>     'zh-cn

  • php简单实现多语言切换的方法

    本文实例讲述了php简单实现多语言切换的方法.分享给大家供大家参考,具体如下: 1.主程序代码: <?php include "lib/function.php"; ?> <script src="js/language.js"></script> <?php if(isset($_GET["language"])){ $_SESSION["language"] = $_GET[&qu

  • ThinkPHP多语言支持与多模板支持概述

    本文以实例形式简述了ThinkPHP的多语言支持与多模板支持.是ThinkPHP中非常重要的技巧,分享给大家供大家参考.具体如下: 一.ThinkPHP多语言支持: config.php配置文件中添加: //多语言支持设置 'LANG_SWITCH_ON'=>true, 'DEFAULT_LANG'=>'zh-cn', 'LANG_AUTO_DETECT'=>true, 'LANG_LIST'=>'en-us,zh-cn,zh-tw', Home/Lang/文件夹下建立三个文件夹,

  • PHP检测用户语言的方法

    本文实例讲述了PHP检测用户语言的方法.分享给大家供大家参考.具体如下: function getPreferredLanguage() { $langs = array(); if (isset($_SERVER['HTTP_ACCEPT_LANGUAGE'])) { // break up string into pieces (languages and q factors) preg_match_all('/([a-z]{1,8}(-[a-z]{1,8})?)\s*(;\s*q\s*=\

  • PHP检测用户是否关闭浏览器的方法

    本文实例讲述了PHP检测用户是否关闭浏览器的方法.分享给大家供大家参考,具体如下: 1.例子1 echo str_repeat(" ",3000); ignore_user_abort(true); mylog('online'); while (true) { /* * 1.程序正常结束 connection_status 0 * 2.点击浏览器"停止"按钮 connection_status 1 * 3.超时 connection_status 2 */ ech

  • CodeIgniter多语言实现方法详解

    本文实例分析了CodeIgniter多语言实现方法.分享给大家供大家参考,具体如下: CI应用目录下有一个language语言包目录,用来配置多种不同的语言.语言的配置位于config文件中,配置格式如下: 复制代码 代码如下: $config['language'] = 'english'; 定义语言文件 language下有个空的english目录,即上面定义的系统默认语言目录,系统会从该目录加载语言包文件.如果要定义不同的语言包,如zh_cn,则创建zh_cn目录并配置相应语言包文件即可.

  • 封装好的一个万能检测表单的方法

    检测表单中的不能为空(.notnull)的验证  作用:一对form标签下有多个(包括一个)表单需要提交时,使用js准确的判断当前按钮对那些元素做判断  用法:在form标签下 找到当前 表单的容器 给予class="form",当前表单的提交按钮给予 class="check"  需要验证为空的元素给予class="notnull" nullmsg="xx不能为空!"提示,需要进行逻辑判断的表单给予class="n

  • php使用Cookie实现和用户会话的方法

    本文实例讲述了php使用Cookie实现和用户会话的方法.分享给大家供大家参考.具体分析如下: PHP 包含了很多的函数,可以用来管理和记录用户信息,包括简单的 cookie 和全方位的用户会话.会话使用 PHP 语言内建的技术,使得保存状态就像是引用超全局变量那样简单. 1.Cookie 简介 我们可以和 PHP 脚本一起使用 cookie 来存储一些关于用户的较小的信息. Cookie 是由用户浏览器存储的少量数据,它和一个来自服务器或脚本的请求一致.通过一个用户的浏览器,一个单个的主机可以

  • PHP编程实现微信企业向用户付款的方法示例

    本文实例讲述了PHP编程实现微信企业向用户付款的方法.分享给大家供大家参考,具体如下: <?php header('content-type:text/html;charset=utf-8'); $data['mch_appid']='##################';//商户的应用appid $data['mchid']='################';//商户ID $data['nonce_str']='123456';//unicode();//这个据说是唯一的字符串下面有方法

  • python实现得到当前登录用户信息的方法

    本文实例讲述了python实现得到当前登录用户信息的方法.分享给大家供大家参考,具体如下: 在linux 环境下,python 更多的被当做 替代 SHELL 的工具语言, 其实linux 中,本身就有很多命令是通过python扩展的,我想记录下一些常用的命令以及使用方式,以便以后查看. 第一部分:python得到得到当前登录用户信息 def get_current_user(): try: # pwd is unix only import pwd return pwd.getpwuid(os

  • iOS 12+ 中检测网络访问的方法

    我最近写了一篇文章,来介绍 iOS 在连接新的 Wi-Fi 网络时,如何在弹出一个 web view 以让用户登录或注册之前,检测 Captive Portals (强制网络门户).如果你连接过诸如酒店.酒吧或咖啡店等地的公共 Wi-Fi 网络,对这个应该会比较熟悉.如果你不熟悉 iOS 中 Captive Portals 的工作方式,可以查看 Solving the Captive Portal Problem on iOS 这篇文章,以了解一些背景知识. 多年来,Apple 的 Reacha

  • 微信公众平台实现获取用户OpenID的方法

    本文实例讲述了微信公众平台实现获取用户OpenID的方法.分享给大家供大家参考.具体分析如下: 用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接),达到打开网页的目的,但是view不能获取用户的openid,需要使用微信"网页授权获取用户基本信息"高级接口结合使用,获得用户的登入个人信息. 具体方法: 1.配置网页授权回调域名,如 www.jb51.net 2.模拟公众号的第三方网页,http://www.jb51.net/getc

  • js检测用户输入密码强度

    一个用Javascript检测用户输入密码强度的效果代码,以下代码主要是从以下四个方面检测用户输入的密码的强度的,有兴趣的朋友可以自己添加或修改成自己想要的形式! 1. 如果输入的密码位数少于5位,那么就判定为弱. 2. 如果输入的密码只由数字.小写字母.大写字母或其它特殊符号当中的一种组成,则判定为弱. 3. 如果密码由数字.小写字母.大写字母或其它特殊符号当中的两种组成,则判定为中. 4. 如果密码由数字.小写字母.大写字母或其它特殊符号当中的三种以上组成,则判定为强. 先来看看这个实现的效

随机推荐