php6변경된 점


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.