PHP 6, a planned major upgrade to the popular open source dynamic language for Web applications, will feature internationalization capabilities via Unicode support, key developers of the language said Wednesday.
"In PHP 6, everything by default will be Unicode," such as default string types, said PHP core developer Andrei Zmievski during a keynote presentation at the 2009 Zend/PHP conference in San Jose, Calif. The PHP 6 platform also will feature the ability to use Unicode characters for identifiers.
Unicode for PHP addresses globalization, Zmievski said in an interview after his talk. Developers will want to write their applications so they can be deployed in other markets, he said. "If you think you can develop your application only for your particular market, you're really missing out on business opportunities elsewhere," Zmievski said.
"Unicode makes it easier to write applications that can deal with various alphabets and encoding," said Andi Gutmans, a PHP core developer and CEO of PHP tools vendor Zend Technologies, in an interview at the conference. "It makes it easier write an application that can work as well in Chinese and Japanese as it can in English."
PHP core developers still need to complete development of Unicode items in areas like cookie access and PDO (PHP Database Objects.)
"Once that's done, we need to test PHP 6 on a number of well-known applications and frameworks, such as Drupal," Zmievski said.
There is no set date for release of PHP 6, which would follow the release PHP 5.3 this past June. That release included capabilities initially planned for PHP 6 but moved up, such as garbage collection for objects as well as namespaces for better code organization.
Also eyed for PHP 6 is improving how numbers are handled in PHP, including support for long numbers. Another capability being considered is traits, allowing horizontal reuse of code. Developers could add functionality without having to deal with multiple inheritance problems.
Read-only properties and scalar type hints are being considered for the PHP 6 platform. PHP developers also are pondering first order functions, providing a way to refer to functions and methods as objects and be able to pass them around and inspect and modify them.
Briefly touching on plans for a subsequent PHP 7 release, Zmievski cited desires by some to rewrite the language, which he warned against. "There's a lot of calls to change a lot of things, but it's not a good idea to rewrite everything from scratch," he said.
A conference attendee lauded capabilities planned for version 6. Both internationalization and traits "will be really useful for us," said Pierrick Charron, of Nstein, which offers a PHP-based content management system. Internationalization currently presents difficulties in PHP, he explained
Gutmans also stressed PHP's strengths, calling it mainstream for the enterprise and beneficial for cloud computing. "PHP's thriving and the recession has been a big accelerator behind the adoption of open source and PHP," he said. "Companies have to increase productivity and lower costs and PHP's a way to do that."
He also questioned the relevance of enterprise Java, calling it too complicated and not really designed with the Web in mind. "The Java community today has already discovered that enterprise Java is not suitable for Web workloads so they're trying to reinvent themselves by creating lightweight Web frameworks for Java," such as the Spring Framework, Gutmans said.
"What we're seeing is a lot of enterprise Java developers are moving away from enterprise Java. Some of them are staying [in the] Java world and going to lightweight Web frameworks but a lot of them actually moving to dynamic languages including PHP," said Gutmans.
Zend this week also announced a beta version of Zend Studio 7.1, an upgrade to Zend's PHP IDE featuring remote server support and integrated support for task -focused programming based on the Eclipse Mylyn project. Version 7.1 is due to ship by the end of 2009.