php实现获取及设置用户访问页面语言类
2023-06-13 09:15:46 时间
本文实例讲述了php实现获取及设置用户访问页面语言类,分享给大家供大家参考。具体分析如下:
该实例UserLanguageClass获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language。根据用户选择的语言显示对应的页面(英文,简体中文,繁体中文)
UserLang.class.php类文件如下:
<?php /**UserLanguageClass获取/设置用户访问的页面语言,如果用户没有设置访问语言,则读取Accept-Language *Date:2014-05-26 *Author:fdipzone *Ver:1.0 * *Func: *publicget获取用户访问语言 *publicset设置用户访问语言 *privategetAcceptLanguage获取HTTP_ACCEPT_LANGUAGE */ classUserLang{//classstart private$name="userlang";//cookiename private$expire=2592000;//cookieexpire30days /**初始化 *@paramString$namecookiename *@paramint$expirecookieexpire */ publicfunction__construct($name="",$expire=null){ //设置cookiename if($name!=""){ $this->name=$name; } //设置cookieexpire if(is_numeric($expire)&&$expire>0){ $this->expire=intval($expire); } } /**获取用户访问语言*/ publicfunctionget(){ //判断用户是否有设置过语言 if(isset($_COOKIE[$this->name])){ $lang=$_COOKIE[$this->name]; }else{ $lang=$this->getAcceptLanguage(); } return$lang; } /**设置用户访问语言 *@paramString$lang用户访问语言 */ publicfunctionset($lang=""){ $lang=strtolower($lang); //只能是英文,简体中文,繁体中文 if(in_array($lang,array("en","sc","tc"))){ setcookie($this->name,$lang,time()+$this->expire); } } /**获取HTTP_ACCEPT_LANGUAGE*/ privatefunctiongetAcceptLanguage(){ $lang=strtolower($_SERVER["HTTP_ACCEPT_LANGUAGE"]); if(in_array(substr($lang,0,5),array("zh-tw","zh_hk"))){ $lang="tc"; }elseif(in_array(substr($lang,0,5),array("zh-cn","zh-sg"))){ $lang="sc"; }else{ $lang="en"; } return$lang; } }//classend ?>
demo示例程序如下:
<?php require"UserLang.class.php"; $obj=newUserLang("sitelang",3600); echo$obj->get()."<br>"; ?>
希望本文所述对大家PHP程序设计的学习有所帮助。
相关文章
- php静态延迟方法,phpstatic延迟静态绑定_PHP教程
- PHP操作MySQL数据库:实现快速连接(php连接数据库mysql)
- 数据PHP编程:从MySQL数据库中取出数据(php取mysql)
- 快速连接:PHP与MySQL的数据库通信(php链接mysql数据库)
- 简单步骤实现PHP连接Redis集群(php连接redis集群)
- Linux下打开PHP文件的实用技巧(linux打开php文件)
- PHP连接MySQL:实现数据交互(php与mysql连接)
- 实现缓存PHP开启Redis超越缓存技术(php开启redis)
- PHP与MySQL互动:开发动态网站的关键(php与mysql交互)
- PHP与MySQL结合使用实现关联查询的方法(php关联mysql查询)
- 使用PHP实现Redis订阅功能(redis订阅php)
- PHP添加MySQL扩展:快速实现数据库连接(php添加mysql扩展)
- 使用PHP实现Redis分布式缓存(php实例化redis)
- 检测PHP对MSSQL数据库操作的能力(检测php_mssql)
- MySQL和PHP解决乱码问题(mysql php 乱码)
- PHP和MySQL协同修改数据库(php mysql 修改)
- 测试PHP连接MS SQL 数据库的结果(php链接mssql测试)
- 使用PHP编写连接MSSQL类,轻松实现数据库操作(php连接mssql 类)
- PHP连接MSSQL:让你更快更好地实现数据互通(php接mssql)
- PHP与MSSQL数据库之间的转义学习(php mssql 转义)
- PHP 和 MSSQL 扩展库无缝集成(php mssql扩展库)
- PHP与MSSQl的兼容性探索(php mssql 兼容)
- 用微信、PHP和MySQL构建快速、可靠的网站(微信 php mysql)
- MySQL与PHP实现长久连接的完美结合(mysql php长连接)
- 混合开发助力企业信息化C语言PHP和MySQL联动提升系统性能(c php mysql)
- PHP与MySQL实现三表关联操作(mysql三表关联pHP)
- 内存Redis自动优化PHP内存管理(redis自动释放php)