PHP 6的国际化增强:Unicode编程时代到来

在前不久的一次PHP创始人Rasmus的访谈中,Rasmus提到了PHP 6中将会增添的新特性,以及自己对它的期待。其中,他提到了Unicode编程。这个在Ruby中早已实现的功能,也将进入PHP 6中了。Web开发领域的Unicode编程时代终于要到来了。

PHP核心开发者Andrei Zmievski在最近举行的2009 Zend/PHP会议的主题发言中提出:“在接下来的PHP 6重要升级中,将通过支持Unicode来帮助开发者们写出能够部署到多个不同语言市场的应用程序。”

商业开发中如果只是开发为特语言市场的应用程序,就会失去其他地方的商业机会。早在2006年4月,Andrei Zmievski就提出未来需要支持Unicode,而且他认为这件事早就应该做了。所谓Unicode就是不论什么平台,什么语言,都使用统一的编码,对于PHP 6,包括string类型在内,都将是Unicode内置的。

PHP 6的Unicode使得写出能处理各种语言和编码的应用程序更容易,比如很容易就可以写出一个同时支持中、日、英文的应用程序,以同时面对来自中国、日本和英语国家的用户。

PHP增强了国际化是件一直令人期待,让人高兴的事情,特别是对那些不是美国和英国本土出生的软件开发者和使用PHP网站提供服务的企业主,包括持续增长的中国外贸企业站点。一些提供PHP内容管理系统的厂商也反映目前的PHP版本支持国际化非常困难,因此即将升级的国际化对他们非常有帮助。

从PHP的官方网站上看到PHP的Unicode Completion Stats截至今日为70%左右,但PHP核心开发者仍然需要完成在cookie访问和PDO (PHP Database Objects)等方面的Unicode开发。Zmievski说:“这部分完成后,我们会在一些知名的应用程序和框架上测试PHP 6,比如 Drupal。”

PHP核心开发者Gutsman表示:PHP现在的应用更加广泛了,经济不景气反而加速了开源和PHP的使用,因为在经济衰退中,公司不得不增加生产性,降低成本,而PHP恰好能做到这一点。

同样是Web开发语言和平台的重要一支,Java方面的发展,最初的企业级Java由于不适合Web负载,已经逐步被流行的轻量级框架如Spring等取代,有一些Java开发者也转向PHP这样的动态语言,因此国际化的支持对于PHP阵营的壮大将起到更大的作用。但对于互联网的实现载体,Web开发语言 /平台,它们的生命力本身就来源于随着互联网的发展而不断的进化和发展,无论是PHP支持了Unicode还是Java变得更加轻巧,都是如此。

值得关注的是,PHP 6也将改善数字的处理,包括长型数字。另外traits,区别于类的垂直继承,一个能够水平重用代码的功能也在考虑中,开发者将不需要处理多重继承就可以追加功能。

Zend上周也宣布了Zend's PHP IDE——Zend Studio 7.1的beta版,该版本提供了远程服务器的支持,并且集成了任务的支持。7.1版计划在2009年末正式提供。

关于PHP 6对于Unicode的更详细内容可以参考PHP官方站点以及Andrei Zmievski的站点中提供的发言文档,最新的PHP 6的开发版本可以从http://snaps.php.net/获得。

【编辑推荐】

  1. 揭示PHP成功背后的秘密:PHP创始人访谈录
  2. ASP.NET比拼PHP,谁是速度之王?
  3. PHP老手谈PHP和Python的基础特性
  4. 再谈Web开发:PHP,Java和.NET的过去,现在和未来
  5. Java、.Net、PHP、Ruby优劣势概览
免责声明:文章内容不代表本站立场,仅供读者参考。产品相关技术问题请发送工单。 本文链接:https://www.idc.net/help/408606/

为您推荐

开源数据收集引擎 Logstash 讲解和示例讲解

一、概述 Logstash 是一个开源的数据收集和日志处理工具,它是 Elastic Stack(ELK Stack)的一部分,用于从各种数据源中采集、转换和传输数据,以帮助分析和可视化大规模数据。Logstash 通常与 Elasticsearch 和 Ki...

八个开源免费单点登录(SSO)系统

单点登录(SSO)是一个登录服务层,通过一次登录访问多个应用。使用SSO服务可以提高多系统使用的用户体验和安全性,用户不必记忆多个密码、不必多次登录浪费时间。 下面推荐一些市场上最好的开源SSO系统,可作为商业SSO替代。 1.Authelia https://github.com/authelia/authelia ...

浅谈HBase数据结构和系统架构

Part 01 LSM树模型 常见的的关系型数据库,如MySQL、SQL Server、Oracle等,使用B+ Tree作为数据存储与索引的基本结构,非叶子节点只存放索引数据,叶子节点存放所有数据和指向相邻节点的指针,具有高效的范围查询和稳定的查找效率,以及具有较小的读放大和空间放大。采用磁盘随机读写方式,且以磁盘数...

微软Radius平台重构现代应用程序部署

微软的 Azure 孵化团队日前推出一个叫 Radius 的新应用平台。Radius 平台可用于在 Kubernetes、公共云和边缘环境中运行各种现代应用程序。 Radius 是一个开源项目,最初支持的应用程序运行时包括Kubernetes、Azure和AWS,以后还会支持诸如谷歌云平台等云环境。 Mark Russ...

Ext JS3.0正式版发布

Ext JS3.0在经历数次RC版之后,extjs.com终于发布3.0的正式版。总体而言,较2.0改进不大,依然还是原理的组件模型,具体更新及改进如下: ◆提供了参照DWR后与后台的通讯包Direct,支持具有明显的REST风格的CRUD服务 ◆一系列的新的组件和例子,包括有图表(Charting, By YUI F...
返回顶部