Note: The following list may contain some inaccuracies.
To the best of my knowledge, the following things are changing asof PHP 6:
- FILE_BINARY and FILE_TEXT constants available for use with filesystem functions.
- register_globals will be gone.
- magic_quotes will also disappear.
- $HTTP_*_VARS has been removed, in favour for $_GET, $_POST, etc.
- ereg() no longer available in core PHP 6.
- Initiating objects with the reference operator (& new Object()) will generate E_STRICT error.
- E_STRICT error messages are included in E_ALL errors.
- {} for string offsets no longer available.
- [] undeprecated for accessing characters in a string.
- ASP-style tags can no longer be used.
- Better Unicode Support.
- var will be an alias of public, and raises E_STRICT warning.
- Support for 64 bit integers.
- With ternary operator, the “true” expression is no longer required – this can be done: $a = $s ?: ‘b’; (Not clear yet exactly how this will work).
- zend.ze1_compatibility_mode removed.
- safe_mode is being removed.
- Freetype1 and GD1 support removed.
- dl() is only enabled when a SAPI layers registers it explicitly.
- Support for dynamic break levels removed.
- XMLReader and XMLWriter will be in the core distribution.
- mime_magic removed from the core.
- Fileinfo moved to the core.
- ext/soap on by default.
- foreach supports multi-dimensional arrays: foreach($a as $b => list($c, $d))
- microtime() will return as float by default.
- opcode cache included in core distribution, but turned off by default.
If you know of any other changes, or if any above change is incorrect, please leave a comment and let me know.