--- embedaddon/php/UPGRADING 2012/05/29 12:34:34 1.1.1.2 +++ embedaddon/php/UPGRADING 2013/07/22 01:31:37 1.1.1.3 @@ -1,4 +1,4 @@ -$Id: UPGRADING,v 1.1.1.2 2012/05/29 12:34:34 misho Exp $ +$Id: UPGRADING,v 1.1.1.3 2013/07/22 01:31:37 misho Exp $ PHP 5.4 UPGRADE NOTES @@ -37,9 +37,9 @@ PHP 5.4 UPGRADE NOTES ============================= - PHP 5.4 now checks at compile time if /dev/urandom or /dev/arandom - are present. If either is available, session.entropy_file now + are present. If either is available, session.entropy_file now defaults to that file and session.entropy_length defaults to 32. - This provides non-blocking entropy to session id generation. If you + This provides non-blocking entropy to session id generation. If you do not want extra entropy for your session ids, add: session.entropy_file= @@ -89,9 +89,9 @@ PHP 5.4 UPGRADE NOTES session.upload_progress.min_freq - Added a zend.multibyte directive as a replacement of the PHP compile time - configuration option --enable-zend-multibyte. Now the Zend Engine always + configuration option --enable-zend-multibyte. Now the Zend Engine always contains code for multibyte support, which can be enabled or disabled at - runtime. Note: It doesn't make a lot of sense to enable this option if + runtime. Note: It doesn't make a lot of sense to enable this option if ext/mbstring is not enabled, because most functionality is implemented by mbstrings callbacks. @@ -107,7 +107,7 @@ PHP 5.4 UPGRADE NOTES in a stream fashion (through php://input) without having it copied in memory multiple times. -- Added windows_show_crt_warning. This directive shows the CRT warnings when +- Added windows_show_crt_warning. This directive shows the CRT warnings when enabled. These warnings were displayed by default until now. It is disabled by default. @@ -162,13 +162,17 @@ PHP 5.4 UPGRADE NOTES - Non-numeric string offsets, e.g. $a['foo'] where $a is a string, now return false on isset() and true on empty(), and produce warning if - trying to use them. Offsets of types double, bool and null produce + trying to use them. Offsets of types double, bool and null produce notice. Numeric strings ($a['2']) still work as before. Note that offsets like '12.3' and '5 and a half' are considered non-numeric and produce warning, but are converted to 12 and 5 respectively for backwards compatibility reasons. +- Long numeric strings that do not fit in integer or double (such as + "92233720368547758070") are compared using string comparison if + they could otherwise result in precision loss - since 5.4.4. + - Closures now support scopes and $this and can be rebound to objects using Closure::bind() and Closure::bindTo(). @@ -178,6 +182,9 @@ PHP 5.4 UPGRADE NOTES - Parse error messages are changed to contain more information about the error. +- __clone and __destruct since 5.4.4 follow the same scoping rules as + the rest of the methods (see bug #61782 for details). + ================================ 4. Changes to existing functions ================================ @@ -200,7 +207,7 @@ PHP 5.4 UPGRADE NOTES - htmlentities() and htmlspecialchars() are stricter in the code units they accept for the asian encodings. For Big5-HKSCS, the octets 0x80 and 0xFF are - rejected. For GB2312/EUC-CN, the octets 0x8E, 0x8F, 0xA0 and 0xFF are + rejected. For GB2312/EUC-CN, the octets 0x8E, 0x8F, 0xA0 and 0xFF are rejected. For SJIS, the octets 0x80, 0xA0, 0xFD, 0xFE and 0xFF are rejected, except maybe after a valid starting byte. For EUC-JP, the octets 0xA0 and 0xFF are rejected. @@ -226,7 +233,7 @@ PHP 5.4 UPGRADE NOTES checks on the validity of the entities. Numerical entities are checked for a valid range (0 to 0x10FFFF); if the flag ENT_DISALLOWED is given, the validity of such numerical entity in the target document type is also - checked. Named entities are checked for necessary existence in the target + checked. Named entities are checked for necessary existence in the target document type instead of only checking whether they were constituted by alphanumeric characters. @@ -332,6 +339,17 @@ PHP 5.4 UPGRADE NOTES - ob_start() no longer starts multiple output buffers when passed array("callback1", "callback2", "callback3", ...). +- Since 5.4.4, "php://fd" stream syntax is available only in CLI build. + +- Since 5.4.5, resourcebundle_create() accepts null for the first two arguments. + +- Since 5.4.6, SimpleXMLElement::getDocNamespaces() has and extra parameter which + allows for toggling if the list of namespaces starts from the document root + or from the node you call the method on + +- Since 5.4.7, ctor is always called when new user stream wrapper object is created. + Before, it was called only when stream_open was called. + ============================== 5. Changes to existing classes ============================== @@ -364,6 +382,9 @@ PHP 5.4 UPGRADE NOTES - FilesystemIterator, GlobIterator and (Recursive)DirectoryIterator now use the default stream context. +- Since 5.4.5, the constructor of ResourceBundle accepts NULL for the first two + arguments. + =========================== 7. Deprecated Functionality =========================== @@ -422,7 +443,7 @@ d. Removed hash algorithms a. Extensions no longer maintained - ext/sqlite is no longer part of the base distribution and has been moved - to PECL. Use sqlite3 or PDO_SQLITE instead. + to PECL. Use sqlite3 or PDO_SQLITE instead. b. Extensions with changed behavior @@ -476,7 +497,7 @@ b. Extensions with changed behavior =========================== - A REQUEST_TIME_FLOAT value returns a floating point number indicating the - time with microsecond precision. All SAPIs providing this value should be + time with microsecond precision. All SAPIs providing this value should be returning float and not time_t. - apache_child_terminate(), getallheaders(), apache_request_headers() @@ -499,6 +520,13 @@ b. Extensions with changed behavior - is_link now works properly for symbolic links on Windows Vista or later. Earlier systems do not support symbolic links. +- As of PHP 5.4.5 and above the COM extension isn't compiled statically in PHP + anymore but shared. It'll still be delivered with the standard PHP release but + must be activated manually with the "extension = php_com_dotnet.dll" directive + in php.ini. + +- Apache 2.4 handler is supported as of PHP 5.4.9 + ================== 12. New in PHP 5.4 ================== @@ -600,6 +628,10 @@ c. New functions - mysqli: - mysqli_error_list() - mysqli_stmt_error_list() + + - pgsql + - pg_escape_identifier() (5.4.4) + - pg_escape_literal() (5.4.4) - Session: - session_register_shutdown()