需求:php开发多个中文系统支持国际化

思路:

  1. 提炼各个系统中的中文字符,替换为资源key。
  2. 多媒体文件中的中文定位(图片中的中文,中文录音,中文视频,中文模板等)。
  3. 统一翻译文字。准备资源文件。
  4. 各系统开发选择和同步语言功能。
  5. 调整样式。不同语言转化词条长度不一样,有的变的很长,影响美观。
  6. 测试验证。

说明:

  • 国际化不同于本地化,本地化最常见的是游戏本地化,比如英文游戏本地化为中文,也就是汉化,把游戏中的英文改为中文。国际化需要支持语言切换。
  • 思路1中在查找中文之前预估系统中的中文数量,如果不多,手动修改即可,如果数量很多,那需要自己开发中文查找和替换工具,工具不智能会出现断句,给翻译带来困难。
  • 思路2中定位图片中的文字可以把中文替换为资源key或者其他语言后进行,因为有些你认为是中文文字的位置,有可能是一张图片。其他资源类型规范的项目应该都在webroot下。
  • 需要注意语言差异,比如阅读顺序,有的国家语言是从右向左读,翻译会考虑。另外注意语境中动词名词区分,比如“帮助”在中文语境中可以是名词也可以是动词,翻译成其他语言可能就不是一个词了。
  • 有条件的开发一个简单的翻译管理系统,为后续开发的中文功能合并做铺垫。
  • 总之要想做好国际化,一定要有一颗细致的心。

随着祖国的强大,愈来愈多的企业走出国门,造福世界,希望本文能对开发者们有所帮助。

web系统国际化思路的更多相关文章

  1. Web系统大规模并发——电商秒杀与抢购

    电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们 ...

  2. ASP.NET系统国际化总结

    引言 系统要求同时支持中英文,以前对国际化这块只是听说过,从来没有自己动手过,提到国际化那么首先肯定想到的就是资源文件,也确实是这样,于是乎我从开始着手系统国际化功能时前前后后共投入了4次时间段,每次 ...

  3. 亿级 Web 系统的容错性建设实践

    一. 重试机制 最容易也最简单被人想到的容错方式,当然就是“失败重试”,总而言之,简单粗暴!简单是指它的实现通常很简单,粗暴则是指使用不当,很可能会带来系统“雪崩”的风险,因为重试意味着对后端服务的双 ...

  4. 转:亿级Web系统的高容错性实践(好博文)

    亿级Web系统的高容错性实践 亿级Web系统的高容错性实践 背景介绍 大概三年前,我在腾讯负责的活动运营系统,因为业务流量规模的数倍增长,系统出现了各种各样的异常,当时,作为开发的我,7*24小时地没 ...

  5. Web系统大规模并发——电商秒杀与抢购 【转】

    电商的秒杀和抢购,对我们来说,都不是一个陌生的东西.然而,从技术的角度来说,这对于Web系统是一个巨大的考验.当一个Web系统,在一秒钟内收到数以万计甚至更多请求时,系统的优化和稳定至关重要.这次我们 ...

  6. 徐汉彬:Web系统大规模并发——电商秒杀与抢购(转)

    [导读]徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设. 电商的秒杀和抢购,对我们来说,都不是一个陌生的东西. ...

  7. 亿级Web系统的高容错性实践

    亿级Web系统的高容错性实践 背景介绍 大概三年前,我在腾讯负责的活动运营系统,因为业务流量规模的数倍增长,系统出现了各种各样的异常,当时,作为开发的我,7*24小时地没日没夜处理告警,周末和凌晨也经 ...

  8. 【问底】徐汉彬:Web系统大规模并发——电商秒杀与抢购

    [导读]徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设. 电商的秒杀和抢购,对我们来说,都不是一个陌生的东西. ...

  9. 徐汉彬:Web系统大规模并发——电商秒杀与抢购

    [导读]徐汉彬曾在阿里巴巴和腾讯从事4年多的技术研发工作,负责过日请求量过亿的Web系统升级与重构,目前在小满科技创业,从事SaaS服务技术建设. 电商的秒杀和抢购,对我们来说,都不是一个陌生的东西. ...

随机推荐

  1. TVM自定义数据类型

    TVM自定义数据类型 本文将介绍"自定义数据类型"框架,该框架可在TVM中使用自定义数据类型. 介绍 在设计加速器时,关键是如何近似地表示硬件中的实数.这个问题具有长期的行业标准解 ...

  2. Java设计模式:23种设计模式全面解析(超级详细)以及在源码中的应用

    从网络上找的设计模式, 很全面,只要把UML类图看懂了, 照着类图将代码实现是很容易的事情. 步骤: 先看懂类图, 然后将代码实现, 之后再看文字 http://c.biancheng.net/des ...

  3. Spring Boot WebFlux-04——WebFlux 整合 Thymeleaf

    第04课:WebFlux 整合 Thymeleaf 上一篇介绍的是用 MongoDB 来实现 WebFlux 对数据源的操作,那么有了数据需要渲染到前台给用户展示,这就是本文关心的 View 层,Vi ...

  4. 数位dp从会打模板到不会打模板

    打了几个数位$dp$,发现自己除了会打模板之外没有任何长进,遇到非模板题依然什么都不会 那么接下来这篇文章将介绍如何打模板(滑稽) 假设我们要处理$l----r$ 采用记忆化搜索的方式,枚举$< ...

  5. SpringBoot 拦截器妙用,让你一个人开发整个系统的鉴权模块!

    我是陈皮,一个在互联网 Coding 的 ITer,微信搜索「陈皮的JavaLib」第一时间阅读最新文章,回复[资料],即可获得我精心整理的技术资料,电子书籍,一线大厂面试资料和优秀简历模板. Han ...

  6. Java实现适配器模式

    适配器模式(Adapter) 适配器模式涉及到3个角色:要被适配的接口,适配器,目标接口 适配器的工作就是将被适配的接口转换为目标接口 "鸭子类型"就是一个典型的适配器模式:如果它 ...

  7. js笔记16

    动画 (1)css样式提供了运动  过渡的属性transition 从一种情况到另一种情况叫过渡 transition:attr   time   linear   delay attr 是变化的属性 ...

  8. Kubernetes使用节点亲缘性将POD调度到特定节点上

    节点污点可以用来让pod远离特定的节点,尽量在不修改已有pod信息的前提,通过在节点添加污点信息,来拒绝pod在某些节点上的部署. 而现在介绍一种叫做节点亲缘性,通过明确的在pod中添加的信息,来决定 ...

  9. Unity3D学习笔记2——绘制一个带纹理的面

    目录 1. 概述 2. 详论 2.1. 网格(Mesh) 2.1.1. 顶点 2.1.2. 顶点索引 2.2. 材质(Material) 2.2.1. 创建材质 2.2.2. 使用材质 2.3. 光照 ...

  10. PowerMock 支持gRPC的Mock Server实现

    PowerMock是一个Mock Server的实现,它同时支持HTTP与gRPC协议接口的Mock,并提供了灵活的插件功能. 这个工具面向于前后端.测试等对有接口Mock需求的开发人员,也可以作为一 ...