PHP 5.3 RC 2
bron: php.net / PHP 5.3.0RC2 Release Announcement
Ik heb hem zelf nog niet geprobeerd (draai lokaal wel 5.3 RC 1 na veel geruzie met m'n compiler)
In deze release candidate niet veel spannends, wat bugfixes en wat updates van externe bibliotheken. Enige wat mij opviel is de nieuwe 'n' flag voor fopen, en betere ondersteuning van HTTP/1.1's chunked encoding voor de http stream-wrapper die je onder andere met file_get_contents kan gebruiken.
De release notes, zoals ze in het NEWS bestandje in de download zelf staan:
07 May 2009, PHP 5.3.0 RC 2
- Upgraded bundled sqlite to version 3.6.13. (Ilia)
- Upgraded bundled PCRE to version 7.9. (Nuno)
- Upgraded bundled libmagic to 5.02 in the fileinfo extension. (Scott)
- Undeprecated ticks. (Arnaud)
- Improved IMAP support (Pierre):
. Added imap_gc() to clear the imap cache
. Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()
- Implemented FR #41712 (curl progress callback: CURLOPT_PROGRESSFUNCTION).
(sdteffen[at]gmail[dot].com, Pierre)
- Implemented FR #47739 (Missing cURL option do disable IPv6). (Pierre)
- Implemented FR #39637 (Missing cURL option CURLOPT_FTP_FILEMETHOD). (Pierre)
- Added timezone_version_get() to retrieve the version of the used timezone
database. (Derick)
- Added 'n' flag to fopen to allow passing O_NONBLOCK to the underlying
open(2) system call. (Mikko)
- Added "dechunk" filter which can decode HTTP responses with chunked
transfer-encoding. HTTP streams use this filter automatically in case
"Transfer-Encoding: chunked" header is present in response. It's possible to
disable this behaviour using "http"=>array("auto_decode"=>0) in stream
context. (Dmitry)
- Added ability to throw exceptions from SQLite3 instead of warnings. (Scott)
- Added startup notices for deprecated ini settings. (Kalle)
- Fixed bug #48087 (call_user_method() invalid free of arguments). (Felipe)
- Fixed bug #48060 (pdo_pgsql - large objects are returned as empty). (Matteo)
- Fixed bug #48034 (PHP crashes when script is 8192 (8KB) bytes long). (Dmitry)
- Fixed bug #48023 (spl_autoload_register didn't store closures). (Etienne)
- Fixed bug #48004 (Error handler prevents creation of default object).
(Dmitry)
- Fixed bug #47880 (crashes in call_user_func_array()). (Dmitry)
- Fixed bug #47856 (stristr() converts needle to lower-case). (Ilia)
- Fixed bug #47851 (is_callable throws fatal error). (Dmitry)
- Fixed bug #47819 (Getting pdo_mysql.so: undefined symbol: mysqlnd_debug_init
at startup). (Johannes)
- Fixed bug #47816 (pcntl tests failing on NetBSD). (Matteo)
- Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants).
(Matteo)
- Fixed bug #47771 (Exception during object construction from arg call calls
object's destructor). (Dmitry)
- Fixed bug #47745 (FILTER_VALIDATE_INT doesn't allow minimum integer).
(Dmitry)
- Fixed bug #47714 (autoloading classes inside exception_handler leads to
crashes). (Dmitry)
- Fixed bug #47699 (autoload and late static binding). (Dmitry)
- Fixed bug #47662 (Support more than 127 subpatterns in preg_match). (Nuno)
- Fixed bug #47596 (Bus error on parsing file). (Dmitry)
- Fixed bug #47560 (explode()'s limit parameter odd behaviour). (Matt)
- Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()).
(Johannes)
- Fixed bug #47516 (nowdoc can not be embed in heredoc but can be embed in
double quote). (Dmitry)
- Fixed bug #47038 (Memory leak in include). (Dmitry)
- Fixed bug #47021 (SoapClient stumbles over WSDL delivered with
"Transfer-Encoding: chunked"). (Dmitry)
- Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+, with
re2c lexer)). (Matt, Shire)
- Fixed bug #46108 (DateTime - Memory leak when unserializing). (Felipe)
- Fixed bug #44861 (scrollable cursor don't work with pgsql). (Matteo)
- Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo)
- Fixed bug #44173 (PDO->query() parameter parsing/checking needs an
update). (Matteo)
- Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
(Scott, Edward Z. Yang)
- Fixed PECL bug #16338 (phar extension uses php_stream_copy_to_stream). (Greg)
- Fixed PECL bug #14646 (phar error message unclear with php stream wrappers).
(Greg)
- Fixed an issue with ReflectionProperty::setAccessible().
(Sebastian, Roman Borschel)
Gewijzigd op 01/01/1970 01:00:00 door Jelmer -
Ik vind het "undeprecaten" van is_a() wel mooi. Goeie zaak, 5.3.
Jammer dat de IDE's nog geen PHP 5.3 support (zoals voor namespaces), anders was ik al overgestapt.
PS. het terugdraaien van is_a() vind ik een beetje vreemd, instanceof vind ik een veel nettere manier om te bepalen of een instantie bij een bepaalde class hoort.
Gewijzigd op 01/01/1970 01:00:00 door Mark PHP
is_a is dat het een functie is. Je kan er variabelen in gooien (maar dat kan met instanceof ook als het goed is) maar je kan hem ook als callback-functie opgeven. Bijvoorbeeld in combinatie met array_filter. Wanneer je instanceof zou gebruiken, zou je eerst je eigen functie moeten maken, en dat is wat "vreemd" in de mindset van PHP, waar overal wel een functie voor is :)
Het voordeel van