热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

m_Orchestratelearningsystem---网站的语言选择功能(中文英文)

m_Orchestratelearningsystem---网站的语言选择功能(中文英文)一、总结一句话总结:有两种方法,一是session+js端代码,而是session+php端代码。

m_Orchestrate learning system---网站的语言选择功能(中文英文)

一、总结

一句话总结:有两种方法,一是session+js端代码,而是session+php端代码。

推荐使用session+php端代码

用函数最方便,最简便,就是不要忘记引入函数

 

二、网站的语言选择功能

功能描述截图如下:

 

 

方法一:session+js端代码实现

1、选择语言,设置session

//选择语言总界面
public function index()
{
    $fry_language_type=input('fry_language_type');
    if($fry_language_type){
        session('fry_language_type',$fry_language_type);
        $this->success('Success(成功)!!','index/index');
    }
    return view();
}

 

2、js端利用session选择语言


 

3、具体页面位置的语言设置

<span class="fry_language_item fry_language_hk">個人中心span><span class="fry_language_item fry_language_en">Personalspan>

比如导航部分

 1 
 2 
 3 <div class="pet_circle_nav">
 4     <ul class="pet_circle_nav_list">
 5         <li><a href="{:url('personal/index')}"
 6                class="iconfont pet_nav_xinxianshi ">&#xe602;a><span class="fry_language_item fry_language_hk">個人中心span><span class="fry_language_item fry_language_en">Personalspan>li>
 7         <li><a href="{:url('engage/index')}"
 8                class="iconfont pet_nav_zhangzhishi ">&#xe61e;a><span class="fry_language_item fry_language_hk">活動啟發span><span class="fry_language_item fry_language_en">WeEngagespan>li>
 9         <li><a href="{:url('explore/index')}" class="iconfont pet_nav_kantuya ">&#xe62c;a><span class="fry_language_item fry_language_hk">活動探索span><span class="fry_language_item fry_language_en">WeExplorespan>li>
10         <li><a href="{:url('analyze/index')}" class="iconfont pet_nav_mengzhuanti ">&#xe622;a><span class="fry_language_item fry_language_hk">活動分析span><span class="fry_language_item fry_language_en">WeAnalyzespan>li>
11         <li><a href="{:url('weexplain/index')}" class="iconfont pet_nav_meirong ">&#xe629;a><span class="fry_language_item fry_language_hk">活動演示span><span class="fry_language_item fry_language_en">WeExplainspan>li>
12         <li><a href="{:url('reflect/index')}" class="iconfont pet_nav_yiyuan ">&#xe607;a><span class="fry_language_item fry_language_hk">活動反思span><span class="fry_language_item fry_language_en">WeReflectspan>li>
13         <li><a href="{:url('forum.forum/index')}" class="iconfont pet_nav_dianpu ">&#xe604;a><span class="fry_language_item fry_language_hk">全站討論span><span class="fry_language_item fry_language_en">Forumspan>li>
14         <li><a href="Javascript:;" class="iconfont pet_nav_gengduo ">&#xe600;a><span class="fry_language_item fry_language_hk">更多span><span class="fry_language_item fry_language_en">Morespan>li>
15     ul>
16 div>
17 
18 

 

4、这种方法优缺点

优点:

a、简便,要设置语言的时候直接在写语言的位置直接复制下面这段代码设置即可

<span class="fry_language_item fry_language_hk">個人中心span><span class="fry_language_item fry_language_en">Personalspan>
 
缺点:
a、因为是在js端进行的语言选择,所以如果网页加载特别慢没执行到选择语言的js的话,那么显示的时候设置的不同语言是共存的
b、一些特殊的情况无效,比如title,比如下面这段代码(无效原因,span标签被用了):
 1 <div class="am-u-sm-6">
 2     <div class="am-form-group">
 3         <select data-am-selected="{btnSize: 'sm'}" name="a_type" id="student_note_type_choose">
 4             <option value="1" note_type="student_note_type_article">
 5                 <span class="fry_language_item fry_language_hk">文章類span><span class="fry_language_item fry_language_en">Articlespan>
 6             option>
 7             <option value="2" note_type="student_note_type_picture">
 8                 <span class="fry_language_item fry_language_hk">圖片類(畫畫)span><span class="fry_language_item fry_language_en">Imagespan>
 9             option>
10             <option value="3" note_type="student_note_type_audio">
11                 <span class="fry_language_item fry_language_hk">音訊類span><span class="fry_language_item fry_language_en">Audiospan>
12             option>
13             <option value="4" note_type="student_note_type_video">
14                 <span class="fry_language_item fry_language_hk">視頻類span><span class="fry_language_item fry_language_en">Videospan>
15             option>
16         select>
17     div>
18 div>

 

 

方法二:session+php端代码实现

第一步和上面是一样的,只是语言选择从js操作变成了php操作

1、选择语言,设置session

//选择语言总界面 public function index() { $fry_language_type=input('fry_language_type'); if($fry_language_type){ session('fry_language_type',$fry_language_type); $this->success('Success(成功)!!','index/index'); } return view(); }

 

2、php(thinkphp5)利用session选择语言

switch语句实现

<select data-am-selected="{btnSize: 'sm'}" name="a_type" id="student_note_type_choose">
    <option value="1" note_type="student_note_type_article">
        php $fry_language_type=session('fry_language_type');?>
        {switch name="$fry_language_type"}
        {case value="fry_language_hk"} 文章類 {/case}
        {case value="fry_language_en"} Article {/case}
        {default /}
        {/switch}
    option>
select>

 

if语句实现

{if cOndition="session('fry_language_type')=='fry_language_hk'"}圖片類(畫畫){elseif cOndition="session('fry_language_type')=='fry_language_en'"/}Image{/if}

 

<select data-am-selected="{btnSize: 'sm'}" name="a_type" id="student_note_type_choose">
    <option value="2" note_type="student_note_type_picture">
        {if cOndition="session('fry_language_type')=='fry_language_hk'"}圖片類(畫畫){elseif cOndition="session('fry_language_type')=='fry_language_en'"/}Image{/if}
    option>
select>

 

函数实现

这长段php代码完全可以写个函数代替:

<select data-am-selected="{btnSize: 'sm'}" name="a_type" id="student_note_type_choose">
    <option value="1" note_type="student_note_type_article">
        {:chooseLanguage("文章類","Article");}
    option>
    <option value="2" note_type="student_note_type_picture">
        {:chooseLanguage("圖片類(畫畫)","Image");}
    option>
    <option value="3" note_type="student_note_type_audio">
        {:chooseLanguage("音訊類","Audio");}
    option>
    <option value="4" note_type="student_note_type_video">
        {:chooseLanguage("視頻類","Video");}
    option>
select>

 

对应函数:

//語言選擇函數
function chooseLanguage($fry_language_hk,$fry_language_en){
    $fry_language_type=session('fry_language_type');
    if($fry_language_type=="fry_language_hk") echo $fry_language_hk;
    if($fry_language_type=="fry_language_en") echo $fry_language_en;
}

 

 

3、优缺点

因为是在php端操作,所以上述js方法出现的问题这里都不会出现,但是感觉修改一处代码太长不简洁,可能用if标签会好点

其实也差不多,if标签和switch标签的长度

用函数最方便,最简便,就是不要忘记引入函数

 

 

推荐阅读
  • Python正则表达式学习记录及常用方法
    本文记录了学习Python正则表达式的过程,介绍了re模块的常用方法re.search,并解释了rawstring的作用。正则表达式是一种方便检查字符串匹配模式的工具,通过本文的学习可以掌握Python中使用正则表达式的基本方法。 ... [详细]
  • 前景:当UI一个查询条件为多项选择,或录入多个条件的时候,比如查询所有名称里面包含以下动态条件,需要模糊查询里面每一项时比如是这样一个数组条件:newstring[]{兴业银行, ... [详细]
  • vue使用
    关键词: ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • IhaveconfiguredanactionforaremotenotificationwhenitarrivestomyiOsapp.Iwanttwodiff ... [详细]
  • 目录实现效果:实现环境实现方法一:基本思路主要代码JavaScript代码总结方法二主要代码总结方法三基本思路主要代码JavaScriptHTML总结实 ... [详细]
  • CSS3选择器的使用方法详解,提高Web开发效率和精准度
    本文详细介绍了CSS3新增的选择器方法,包括属性选择器的使用。通过CSS3选择器,可以提高Web开发的效率和精准度,使得查找元素更加方便和快捷。同时,本文还对属性选择器的各种用法进行了详细解释,并给出了相应的代码示例。通过学习本文,读者可以更好地掌握CSS3选择器的使用方法,提升自己的Web开发能力。 ... [详细]
  • 本文介绍了九度OnlineJudge中的1002题目“Grading”的解决方法。该题目要求设计一个公平的评分过程,将每个考题分配给3个独立的专家,如果他们的评分不一致,则需要请一位裁判做出最终决定。文章详细描述了评分规则,并给出了解决该问题的程序。 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 推荐系统遇上深度学习(十七)详解推荐系统中的常用评测指标
    原创:石晓文小小挖掘机2018-06-18笔者是一个痴迷于挖掘数据中的价值的学习人,希望在平日的工作学习中,挖掘数据的价值, ... [详细]
  • 展开全部下面的代码是创建一个立方体Thisexamplescreatesanddisplaysasimplebox.#Thefirstlineloadstheinit_disp ... [详细]
  • 本文介绍了游标的使用方法,并以一个水果供应商数据库为例进行了说明。首先创建了一个名为fruits的表,包含了水果的id、供应商id、名称和价格等字段。然后使用游标查询了水果的名称和价格,并将结果输出。最后对游标进行了关闭操作。通过本文可以了解到游标在数据库操作中的应用。 ... [详细]
  • 本文详细介绍了Spring的JdbcTemplate的使用方法,包括执行存储过程、存储函数的call()方法,执行任何SQL语句的execute()方法,单个更新和批量更新的update()和batchUpdate()方法,以及单查和列表查询的query()和queryForXXX()方法。提供了经过测试的API供使用。 ... [详细]
  • CF:3D City Model(小思维)问题解析和代码实现
    本文通过解析CF:3D City Model问题,介绍了问题的背景和要求,并给出了相应的代码实现。该问题涉及到在一个矩形的网格上建造城市的情景,每个网格单元可以作为建筑的基础,建筑由多个立方体叠加而成。文章详细讲解了问题的解决思路,并给出了相应的代码实现供读者参考。 ... [详细]
  • 深入理解CSS中的margin属性及其应用场景
    本文主要介绍了CSS中的margin属性及其应用场景,包括垂直外边距合并、padding的使用时机、行内替换元素与费替换元素的区别、margin的基线、盒子的物理大小、显示大小、逻辑大小等知识点。通过深入理解这些概念,读者可以更好地掌握margin的用法和原理。同时,文中提供了一些相关的文档和规范供读者参考。 ... [详细]
author-avatar
Amandadahl
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有