PHP6 特性,有值得你期待的吗?

Posted on 25th November 2005 by Nio in 程序人生

Derick 发布了 PHP 核心开发人员在巴黎的“会议纪要”:Minutes PHP Developers Meeting。讨论了很多关于 PHP6 的新特性,包括 unicode、摒弃 register_globals magic_quotes 等等,很值得了解一下,也有不少是值得期待的。但感觉更多的是 BC,破坏兼容性真的很令人讨厌。
1. Unicode
o 1.1 Unicode on/off modes
o 1.2 Different String Types
o 1.3 Extension upgrading
o 1.4 Bundling ICU
o 1.5 Filename Encoding
o 1.6 Collator Caching
o 1.7 Optimising []
o 1.8 Locale Sensitivity
o 1.10 Conversion Errors
* 2. Cleanup of Functionality
o 2.1 register_globals
o 2.2 magic_quotes
o 2.3 safe_mode
o 2.4 Deprecated Behaviour
o 2.5 zend.ze1_compatibility mode
o 2.6 Support for Freetype 1 and GD 1
o 2.7 open_basedir
o 2.8 dl()
o 2.9 CGI/FastCGI mode
o 2.10 Dynamic class inheritance
o 2.11 register_long_arrays, HTTP_*_VARS
o 2.12 old type constructors
o 2.13 Case sensitivity of identifiers
o 2.14 break $var
* 3. PECL
o 3.1 XMLReader / XMLWriter in the distribution, on by default
o 3.2 Move non-PDO DB extensions to PECL
o 3.3 Move ereg to PECL
o 3.4 Split ext/dba into a core extensions and sub-extensions in PECL
o 3.5 Fileinfo extension in the distribution
o 3.6 Other extensions to PECL?
o 3.7 Fix ext/soap and add support for wsse/secext
o 3.8 Allow files with an open stream to be deleted
o 3.9 ext/bitset
* 4. Engine Additions
o 4.1 Add a 64bit integer
o 4.2 Adding "goto"
o 4.3 ifsetor() as "replacement" for $foo = isset($foo) ? $foo : "something else"
o 4.4 Allow foreach syntax for multi-dimensional arrays
o 4.5 Cleanup for {} vs. []
o 4.6 Changes to the shut-up (@) operator that disallow (@ini_set(…))
o 4.7 Allow foreach() without "as" part (I guess for iterators)
o 4.8 Named Parameters
o 4.9 Make parameter order consistent over all functions
o 4.10 Minor function changes: microtime()
* 5. Changes to OO functionality
o 5.1 "function require __construct(" to force calling the parent's constructor
o 5.2 Allow interfaces to specify the __construct() signature
o 5.3 Implement inheritance rules for type hints
o 5.4 Late static binding using "this" without "$" (or perhaps with a different name)
o 5.5 Object casting to primitive types
o 5.6 name spaces
o 5.7 Using an undefined property in a class with defined properties should throw a warning
o 5.8 Type-hinted properties and return values
o 5.10 Method calls
o 5.11 ReflectionClass cache in zend_class_entry* and support "$this::class"
o 5.12 Delegates
* 6. Additions
o 6.1 Add an opcode cache to the distribution (APC)
o 6.2 Merge Hardened PHP patch into PHP
o 6.3 Sand boxing or taint mode
o 6.4 All non-fatal errors should be marked in extensions as E_RECOVERABLE_ERROR
o 6.5 All non-fatal errors should become exceptions
o 6.6 E_STRICT on by default
o 6.7 Remove support for and add ""
o 6.8 Rewrite build system
o 6.9 Added persistent flag to zval struct
o 6.10 Read-only properties

No Comments »

No comments yet.

Leave a comment