问题:

1.如何解决国际化中一系列的问题,如时间格式、时区、语言以及编码格式等(i18nv2)。

2.如何读取xml文件,以及写xml文件等一系列操作(config)。

解决方案:

1,php PEAR官方站点有一些很好用的包,对开发很有帮助,其中就有以上两个问题的解决方案,这个些包默认情况下是不被安装的,我们需要手动下载这些包,地址是http://pear.php.net/packages.php,

还有一种方法是,通过php自动安装这些包,进入php安装目录运行go-pear.bat文件,按回车安装PEAR所需的文件。

安装后目录下会多出包括pear.bat等文件,然后打开一个命令行窗口,进入php所在目录,

输入命令:pear install config,包名可参照http://pear.php.net/packages.php目录下的名称。

安装完毕后php根目录下的PEAR下会多出相应的类,

国际化实例,

require_once 'I18Nv2/Language.php';

$lang = &new I18Nv2_Language('zh', 'UTF-8');

echo "Italian name for English: ",
    $lang->getName('en'), "/n";

echo "Italian name for French:  ",
    $lang->getName('cn'), "/n";
?>

使用的时候根据需要将消息文件添加到i18nv2/language/zh.php(中国)下的数组列表中,

读取的时候用  $lang->getName('key')读取文本,

$lang = &new I18Nv2_Language('zh', 'UTF-8');可以设置不同的国家,zh为中国。

2.读xml文件示例(config包xml包)

Example 37-2. Reading configuration from an XML file


<?php
require_once 'Config.php';
$conf = new Config;
$root =& $conf->parseConfig('config.xml', 'XML');
if (PEAR::isError($root)) {
die('Error while reading configuration: ' . $root->getMessage());
}
$settings = $root->toArray();
printf('User settings: <a href="%s">%s %s</a>',
$settings['root']['conf']['www'],
$settings['root']['conf']['firstname'],
$settings['root']['conf']['lastname']
);
?>

In this example the XML file config.xml looks like this:

例子所需的xml文件

<?xml version="1.0" encoding="UTF-8"?>
<conf>
<firstname>John</firstname>
<lastname>Doe</lastname>
<www>http://example.com/</www>
</conf>

不同的版本代码不尽相同,有兴趣的可以取读读PEAR源码,相信对学习PHP有所帮助.

项目需要,学习php一个多星期,本不该放到本blog上的,为了记录学习过程而。。。。。。

欢迎指正!

浅谈php国际(I18N)以及config包的使用相关推荐

  1. 浅谈 UC 国际信息流推荐

    导读:本次分享的主题是浅谈UC国际信息流推荐.会跟大家探讨下发链路中常见的一些问题,主要包括两个场景: 列表页排序,包括:目标确定.多目标任务以及混排组合优化. 内容冷启问题,如果不做内容理解,能否做 ...

  2. python脚本开头怎么写_浅谈Python脚本开头及导包注释自动添加方法

    浅谈Python脚本开头及导包注释自动添加方法 1.开头:#!/usr/bin/python和# -*- coding: utf-8 -*-的作用 – 指定 #!/usr/bin/python 是用来 ...

  3. 浅谈Fiddler4 如何进行Idea抓包操作

    开篇 开篇第一章总得说点多余的东西,本人入坑的时间也有两年时间了,期间遇到的坑不少,但是总觉得都太浅,不值得拿出来聊一聊.而最近发现身边有不少人开始搞起了创作,于是乎又萌生出了分享些什么的想法.今后我 ...

  4. 浅谈:Spring Boot原理分析,切换内置web服务器,SpringBoot监听项目(使用springboot-admin),将springboot的项目打成war包

    浅谈:Spring Boot原理分析(更多细节解释在代码注释中) 通过@EnableAutoConfiguration注解加载Springboot内置的自动初始化类(加载什么类是配置在spring.f ...

  5. java执行jar中的main_浅谈java 执行jar包中的main方法

    浅谈java 执行jar包中的main方法 通过 OneJar 或 Maven 打包后 jar 文件,用命令: java -jar ****.jar 执行后总是运行指定的主方法,如果 jar 中有多个 ...

  6. python可视化工具bokeh_浅谈python可视化包Bokeh

    本文研究的主要是python可视化包Bokeh的相关内容,具体如下. 问题:需要把pandas的数据绘图并通过网页显示,matplotlib需要先保存图像,不合适. 解决:在网上搜了一下,找到一篇介绍 ...

  7. python bokeh_浅谈python可视化包Bokeh

    本文研究的主要是python可视化包Bokeh的相关内容,具体如下. 问题:需要把pandas的数据绘图并通过网页显示,matplotlib需要先保存图像,不合适. 解决:在网上搜了一下,找到一篇介绍 ...

  8. 浅谈HTTPS通信机制和Charles抓包原理-by:nixs

    转载请注明出处:https://blog.csdn.net/zwjemperor/article/details/80719427 主页:https://blog.csdn.net/zwjempero ...

  9. 浅谈百度地图的简单开发之实现地图全景,内景展示功能(四)

    今天,我就接着来浅谈一下关于百度地图的内景,外景的展示功能.今天具体要实现的功能就是输入该地点的名称然后就展示该地点的内景图片,有内景就展示内景,没有则显示该地点的街景,该功能是参考百度地图官方的AP ...

最新文章

  1. mysql5.6怎么配置_MySQL 5.6和5.7怎么进行最优配置的方法
  2. Oracle关于TX锁的一个有趣的问题
  3. 【论文解读】DeepFM论文总结
  4. IT知识架构和操作系统简介1
  5. 好看的UI商城源码已扫码无后门无加密
  6. Activity Window View WindowManager关系Touch事件分发机制
  7. Ubuntu 14.04 无线网卡驱动安装
  8. 常见的SQL面试题:经典50例
  9. 通过 百度网盘 分享文件
  10. 单片机 TDA8023 读 ic 卡 smrat card sync_card
  11. win10时间线时间轴(Timeline)如何关闭隐藏?
  12. 微信小程序——三角形面积计算
  13. 编程的思想是什么,如何建立编程思想,如何训练和提高编程思想?
  14. WebStorm 支持 rpx
  15. 灭屏流程 - 安卓R
  16. 浅谈npm和yarn的区别
  17. 元胞自动机——应用于森林火灾和传染病场景
  18. www.etiger.vip 1612题 高斯求和
  19. JAVA中多态以及向上转型向下转型、重写的讲解
  20. 浅谈Java工厂模式

热门文章

  1. 硬件相关技术资料分享
  2. 让人欲罢不能的今日头条
  3. 做高新技术企业申请,一定要知识产权吗?
  4. web图片裁切插件 cropper.js 详细介绍
  5. 波奇C语言模拟通讯录设计
  6. 网络:数据链路层原理总结
  7. 免费网站seo诊断:从哪些维度进行诊断呢?
  8. 自己动手实现音乐播放器app
  9. 常见的网站攻击方式和防护方式
  10. 2022最全Java后端面试真题、两万字1000+道堪称史上最强的面试题不接受任何反驳