浅谈php国际(I18N)以及config包的使用

问题:

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上的,为了记录学习过程而。。。。。。

欢迎指正!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值