文章标签 ‘update’

26 Feb 2009, PHP 5.2.9 update news

2013年6月12日 没有评论

26 Feb 2009, PHP 5.2.9
– Changed __call() to be invoked on private/protected method access, similar to
properties and __get(). (Andrei)

– Added optional sorting type flag parameter to array_unique(). Default is

– Fixed a crash on extract in zip when files or directories entry names contain
a relative path. (Pierre)
– Fixed error conditions handling in stream_filter_append(). (Arnaud)
– Fixed zip filename property read. (Pierre)
– Fixed explode() behavior with empty string to respect negative limit. (Shire)
– Fixed security issue in imagerotate(), background colour isn’t validated
correctly with a non truecolour image. Reported by Hamid Ebadi,
APA Laboratory (Fixes CVE-2008-5498). (Scott)
– Fixed a segfault when malformed string is passed to json_decode(). (Scott)
– Fixed bug in xml_error_string() which resulted in messages being
off by one. (Scott)

– Fixed bug #47422 (modulus operator returns incorrect results on 64 bit
linux). (Matt)
– Fixed bug #47399 (mb_check_encoding() returns true for some illegal SJIS
characters). (for-bugs at hnw dot jp, Moriyoshi)
– Fixed bug #47353 (crash when creating a lot of objects in object
destructor). (Tony)
– Fixed bug #47322 (sscanf %d doesn’t work). (Felipe)
– Fixed bug #47282 (FILTER_VALIDATE_EMAIL is marking valid email addresses
as invalid). (Ilia)
– Fixed bug #47220 (segfault in dom_document_parser in recovery mode). (Rob)
– Fixed bug #47217 (content-type is not set properly for file uploads). (Ilia)
– Fixed bug #47174 (base64_decode() interprets pad char in mid string as
terminator). (Ilia)
– Fixed bug #47165 (Possible memory corruption when passing return value by
reference). (Dmitry)
– Fixed bug #47152 (gzseek/fseek using SEEK_END produces strange results).
– Fixed bug #47131 (SOAP Extension ignores “user_agent” ini setting). (Ilia)
– Fixed bug #47109 (Memory leak on $a->{“a”.”b”} when $a is not an object).
(Etienne, Dmitry)
– Fixed bug #47104 (Linking shared extensions fails with icc). (Jani)
– Fixed bug #47049 (SoapClient::__soapCall causes a segmentation fault).
– Fixed bug #47048 (Segfault with new pg_meta_data). (Felipe)
– Fixed bug #47042 (PHP cgi sapi is removing SCRIPT_FILENAME for non
apache). (Sriram Natarajan)
– Fixed bug #47037 (No error when using fopen with empty string). (Cristian
Rodriguez R., Felipe)
– Fixed bug #47035 (dns_get_record returns a garbage byte at the end of a
TXT record). (Felipe)
– Fixed bug #47027 (var_export doesn’t show numeric indices on ArrayObject).
– Fixed bug #46985 (OVERWRITE and binary mode does not work, regression
introduced in 5.2.8). (Pierre)
– Fixed bug #46973 (IPv6 address filter rejects valid address). (Felipe)
– Fixed bug #46964 (Fixed pdo_mysql build with older version of MySQL). (Ilia)
– Fixed bug #46959 (Unable to disable PCRE). (Scott)
– Fixed bug #46918 (imap_rfc822_parse_adrlist host part not filled in
correctly). (Felipe)
– Fixed bug #46889 (Memory leak in strtotime()). (Derick)
– Fixed bug #46887 (Invalid calls to php_error_docref()). (oeriksson at
mandriva dot com, Ilia)
– Fixed bug #46873 (extract($foo) crashes if $foo[‘foo’] exists). (Arnaud)
– Fixed bug #46843 (CP936 euro symbol is not converted properly). (ty_c at
cybozuy dot co dot jp, Moriyoshi)
– Fixed bug #46798 (Crash in mssql extension when retrieving a NULL value
inside a binary or image column type). (Ilia)
– Fixed bug #46782 (fastcgi.c parse error). (Matt)
– Fixed bug #46760 (SoapClient doRequest fails when proxy is used). (Felipe)
– Fixed bug #46748 (Segfault when an SSL error has more than one error).
– Fixed bug #46739 (array returned by curl_getinfo should contain
content_type key). (Mikko)
– Fixed bug #46699 (xml_parse crash when parser is namespace aware). (Rob)
– Fixed bug #46419 (Elements of associative arrays with NULL value are
lost). (Dmitry)
– Fixed bug #46282 (Corrupt DBF When Using DATE). (arne at bukkie dot nl)
– Fixed bug #46026 (bz2.decompress/zlib.inflate filter tries to decompress
after end of stream). (Greg)
– Fixed bug #46005 (User not consistently logged under Apache2). (admorten
at umich dot edu, Stas)
– Fixed bug #45996 (libxml2 2.7 causes breakage with character data in
xml_parse()). (Rob)
– Fixed bug #45940 (MySQLI OO does not populate connect_error property on
failed connect). (Johannes)
– Fixed bug #45923 (mb_st[r]ripos() offset not handled correctly). (Moriyoshi)
– Fixed bug #45327 (memory leak if offsetGet throws exception). (Greg)
– Fixed bug #45239 (Encoding detector hangs with mbstring.strict_detection
enabled). (Moriyoshi)
– Fixed bug #45161 (Reusing a curl handle leaks memory). (Mark Karpeles, Jani)
– Fixed bug #44336 (Improve pcre UTF-8 string matching performance). (frode
at coretrek dot com, Nuno)
– Fixed bug #43841 (mb_strrpos() offset is byte count for negative values).
– Fixed bug #37209 (mssql_execute with non fatal errors). (Kalle)
– Fixed bug #35975 (Session cookie expires date format isn’t the most
compatible. Now matches that of setcookie()). (Scott)

分类: php学习 标签: ,

30 Jun 2009, PHP 5.3.0 update news

2013年6月12日 没有评论

30 Jun 2009, PHP 5.3.0
– Upgraded bundled PCRE to version 7.9. (Nuno)
– Upgraded bundled sqlite to version 3.6.15. (Scott)

– Moved extensions to PECL (Derick, Lukas, Pierre, Scott):
. ext/dbase
. ext/fbsql
. ext/fdf
. ext/ncurses
. ext/mhash (BC layer is now entirely within ext/hash)
. ext/ming
. ext/msql
. ext/sybase (not maintained anymore, sybase_ct has to be used instead)

– Removed the experimental RPL (master/slave) functions from mysqli. (Andrey)
– Removed zend.ze1_compatibility_mode. (Dmitry)
– Removed all zend_extension_* php.ini directives. Zend extensions are now
always loaded using zend_extension directive. (Derick)
– Removed special treatment of “/tmp” in sessions for open_basedir.
Note: This undocumented behaviour was introduced in 5.2.2. (Alexey)
– Removed shebang line check from CGI sapi (checked by scanner). (Dmitry)

– Changed PCRE, Reflection and SPL extensions to be always enabled. (Marcus)
– Changed md5() to use improved implementation. (Solar Designer, Dmitry)
– Changed HTTP stream wrapper to accept any code between and including
200 to 399 as successful. (Mike, Noah Fontes)
– Changed __call() to be invoked on private/protected method access, similar to
properties and __get(). (Andrei)
– Changed dl() to be disabled by default. Enabled only when explicitly
registered by the SAPI. Currently enabled with cli, cgi and embed SAPIs.
– Changed opendir(), dir() and scandir() to use default context when no context
argument is passed. (Sara)
– Changed open_basedir to allow tightening in runtime contexts. (Sara)
– Changed PHP/Zend extensions to use flexible build IDs. (Stas)
– Changed error level E_ERROR into E_WARNING in Soap extension methods
parameter validation. (Felipe)
– Changed openssl info to show the shared library version number. (Scott)
– Changed floating point behaviour to consistently use double precision on all
platforms and with all compilers. (Christian Seiler)
– Changed round() to act more intuitively when rounding to a certain precision
and round very large and very small exponents correctly. (Christian Seiler)
– Changed session_start() to return false when session startup fails. (Jani)
– Changed property_exists() to check the existence of a property independent of
accessibility (like method_exists()). (Felipe)
– Changed array_reduce() to allow mixed $initial (Christian Seiler)

– Improved PHP syntax and semantics:
. Added lambda functions and closures. (Christian Seiler, Dmitry)
. Added “jump label” operator (limited “goto”). (Dmitry, Sara)
. Added NOWDOC syntax. (Gwynne Raskind, Stas, Dmitry)
. Added HEREDOC syntax with double quotes. (Lars Strojny, Felipe)
. Added support for using static HEREDOCs to initialize static variables and
class members or constants. (Matt)
. Improved syntax highlighting and consistency for variables in double-quoted
strings and literal text in HEREDOCs and backticks. (Matt)
. Added “?:” operator. (Marcus)
. Added support for namespaces. (Dmitry, Stas, Gregory, Marcus)
. Added support for Late Static Binding. (Dmitry, Etienne Kneuss)
. Added support for __callStatic() magic method. (Sara)
. Added forward_static_call(_array) to complete LSB. (Mike Lively)
. Added support for dynamic access of static members using $foo::myFunc().
(Etienne Kneuss)
. Improved checks for callbacks. (Marcus)
. Added __DIR__ constant. (Lars Strojny)
. Added new error modes E_USER_DEPRECATED and E_DEPRECATED.
E_DEPRECATED is used to inform about stuff being scheduled for removal
in future PHP versions. (Lars Strojny, Felipe, Marcus)
. Added “request_order” INI variable to control specifically $_REQUEST
behavior. (Stas)
. Added support for exception linking. (Marcus)
. Added ability to handle exceptions in destructors. (Marcus)

– Improved PHP runtime speed and memory usage:
. Substitute global-scope, persistent constants with their values at compile
time. (Matt)
. Removed direct executor recursion. (Dmitry)
. Use fastcall calling convention in executor on x86. (Dmitry)
. Use IS_CV for direct access to $this variable. (Dmitry)
. Use ZEND_FREE() opcode instead of ZEND_SWITCH_FREE(IS_TMP_VAR). (Dmitry)
. Lazy EG(active_symbol_table) initialization. (Dmitry)
. Optimized ZEND_RETURN opcode to not allocate and copy return value if it is
not used. (Dmitry)
. Replaced all flex based scanners with re2c based scanners.
(Marcus, Nuno, Scott)
. Added garbage collector. (David Wang, Dmitry).
. Improved PHP binary size and startup speed with GCC4 visibility control.
. Improved engine stack implementation for better performance and stability.
. Improved memory usage by moving constants to read only memory.
(Dmitry, Pierre)
. Changed exception handling. Now each op_array doesn’t contain
ZEND_HANDLE_EXCEPTION opcode in the end. (Dmitry)
. Optimized require_once() and include_once() by eliminating fopen(3) on
second usage. (Dmitry)
ZEND_ADD_INTERFACE opcode. (Dmitry)
. Optimized string searching for a single character.
(Michal Dziemianko, Scott)
. Optimized interpolated strings to use one less opcode. (Matt)

– Improved php.ini handling: (Jani)
. Added “.htaccess” style user-defined php.ini files support for CGI/FastCGI.
. Added support for special [PATH=/opt/httpd/www.example.com/] and
[HOST=www.example.com] sections. Directives set in these sections can
not be overridden by user-defined ini-files or during runtime.
. Added better error reporting for php.ini syntax errors.
. Allowed using full path to load modules using “extension” directive.
. Allowed “ini-variables” to be used almost everywhere ini php.ini files.
. Allowed using alphanumeric/variable indexes in “array” ini options.
. Added 3rd optional parameter to parse_ini_file() to specify the scanning
mode of INI_SCANNER_NORMAL or INI_SCANNER_RAW. In raw mode option values
and section values are treated as-is.
. Fixed get_cfg_var() to be able to return “array” ini options.
. Added optional parameter to ini_get_all() to only retrieve the current
value. (Hannes)

– Improved Windows support:
. Update all libraries to their latest stable version. (Pierre, Rob, Liz,
. Added Windows support for stat(), touch(), filemtime(), filesize() and
related functions. (Pierre)
. Re-added socket_create_pair() for Windows in sockets extension. (Kalle)
. Added inet_pton() and inet_ntop() also for Windows platforms.
(Kalle, Pierre)
. Added mcrypt_create_iv() for Windows platforms. (Pierre)
. Added ACL Cache support on Windows.
(Kanwaljeet Singla, Pierre, Venkat Raman Don)
. Added constants based on Windows’ GetVersionEx information.
. Added support for ACL (is_writable, is_readable, reports now correct
results) on Windows. (Pierre, Venkat Raman Don, Kanwaljeet Singla)
. Added support for fnmatch() on Windows. (Pierre)
. Added support for time_nanosleep() and time_sleep_until() on Windows.
. Added support for symlink(), readlink(), linkinfo() and link() on Windows.
They are available only when the running platform supports them. (Pierre)
. the GMP extension now relies on MPIR instead of the GMP library. (Pierre)
. Added Windows support for stream_socket_pair(). (Kalle)
. Drop all external dependencies for the core features. (Pierre)
. Drastically improve the build procedure (Pierre, Kalle, Rob):
. VC9 (Visual C++ 2008) or later support
. Initial experimental x64 support
. MSI installer now supports all recent Windows versions, including
Windows 7. (John, Kanwaljeet Singla)

– Improved and cleaned CGI code:
. FastCGI is now always enabled and cannot be disabled.
See sapi/cgi/CHANGES for more details. (Dmitry)
. Added CGI SAPI -T option which can be used to measure execution
time of script repeated several times. (Dmitry)

– Improved streams:
. Fixed confusing error message on failure when no errors are logged. (Greg)
. Added stream_supports_lock() function. (Benjamin Schulz)
. Added context parameter for copy() function. (Sara)
. Added “glob://” stream wrapper. (Marcus)
. Added “params” as optional parameter for stream_context_create(). (Sara)
. Added ability to use stream wrappers in include_path. (Gregory, Dmitry)

– Improved DNS API
. Added Windows support for dns_check_record(), dns_get_mx(), checkdnsrr() and
getmxrr(). (Pierre)
. Added support for old style DNS functions (supports OSX and FBSD). (Scott)
. Added a new “entries” array in dns_check_record() containing the TXT
elements. (Felipe, Pierre)

– Improved hash extension:
. Changed mhash to be a wrapper layer around the hash extension. (Scott)
. Added hash_copy() function. (Tony)
. Added sha224 hash algorithm to the hash extension. (Scott)

– Improved IMAP support (Pierre):
. Added imap_gc() to clear the imap cache
. Added imap_utf8_to_mutf7() and imap_mutf7_to_utf8()

– Improved mbstring extension:
. Added “mbstring.http_output_conv_mimetypes” INI directive that allows
common non-text types such as “application/xhtml+xml” to be converted
by mb_output_handler(). (Moriyoshi)

– Improved OCI8 extension (Chris Jones/Oracle Corp.):
. Added Database Resident Connection Pooling (DRCP) and Fast
Application Notification (FAN) support.
. Added support for Oracle External Authentication (not supported
on Windows).
. Improve persistent connection handling of restarted DBs.
. Added SQLT_AFC (aka CHAR datatype) support to oci_bind_by_name.
. Fixed bug #45458 (Numeric keys for associative arrays are not
handled properly)
. Fixed bug #41069 (Segmentation fault with query over DB link).
. Fixed define of SQLT_BDOUBLE and SQLT_BFLOAT constants with Oracle
10g ORACLE_HOME builds.
. Changed default value of oci8.default_prefetch from 10 to 100.
. Fixed PECL Bug #16035 (OCI8: oci_connect without ORACLE_HOME defined causes
segfault) (Chris Jones/Oracle Corp.)
. Fixed PECL Bug #15988 (OCI8: sqlnet.ora isn’t read with older Oracle
libraries) (Chris Jones/Oracle Corp.)
. Fixed PECL Bug #14268 (Allow “pecl install oci8” command to “autodetect” an
Instant Client RPM install) (Chris Jones/Oracle Corp.)
. Fixed PECL bug #12431 (OCI8 ping functionality is broken).
. Allow building (e.g from PECL) the PHP 5.3-based OCI8 code with
PHP 4.3.9 onwards.
. Provide separate extensions for Oracle 11g and 10g on Windows.
(Pierre, Chris)

– Improved OpenSSL extension:
. Added support for OpenSSL digest and cipher functions. (Dmitry)
. Added access to internal values of DSA, RSA and DH keys. (Dmitry)
. Fixed a memory leak on openssl_decrypt(). (Henrique)
. Fixed segfault caused by openssl_pkey_new(). (Henrique)
. Fixed bug caused by uninitilized variables in openssl_pkcs7_encrypt() and
openssl_pkcs7_sign(). (Henrique)
. Fixed error message in openssl_seal(). (Henrique)

– Improved pcntl extension: (Arnaud)
. Added pcntl_signal_dispatch().
. Added pcntl_sigprocmask().
. Added pcntl_sigwaitinfo().
. Added pcntl_sigtimedwait().

– Improved SOAP extension:
. Added support for element names in context of XMLSchema’s . (Dmitry)
. Added ability to use Traversable objects instead of plain arrays.
(Joshua Reese, Dmitry)
. Fixed possible crash bug caused by an uninitialized value. (Zdash Urf)

– Improved SPL extension:
. Added SPL to list of standard extensions that cannot be disabled. (Marcus)
. Added ability to store associative information with objects in
SplObjectStorage. (Marcus)
. Added ArrayAccess support to SplObjectStorage. (Marcus)
. Added SplDoublyLinkedList, SplStack, SplQueue classes. (Etienne)
. Added FilesystemIterator. (Marcus)
. Added GlobIterator. (Marcus)
. Added SplHeap, SplMinHeap, SplMaxHeap, SplPriorityQueue classes. (Etienne)
. Added new parameter $prepend to spl_autoload_register(). (Etienne)
. Added SplFixedArray. (Etienne, Tony)
. Added delaying exceptions in SPL’s autoload mechanism. (Marcus)
. Added RecursiveTreeIterator. (Arnaud, Marcus)
. Added MultipleIterator. (Arnaud, Marcus, Johannes)

– Improved Zend Engine:
. Added “compact” handler for Zend MM storage. (Dmitry)
. Added “+” and “*” specifiers to zend_parse_parameters(). (Andrei)
. Added concept of “delayed early binding” that allows opcode caches to
perform class declaration (early and/or run-time binding) in exactly
the same order as vanilla PHP. (Dmitry)

– Improved crypt() function: (Pierre)
. Added Blowfish and extended DES support. (Using Blowfish implementation
from Solar Designer).
. Made crypt features portable by providing our own implementations
for crypt_r and the algorithms which are used when OS does not provide
them. PHP implementations are always used for Windows builds.

– Deprecated session_register(), session_unregister() and
session_is_registered(). (Hannes)
– Deprecated define_syslog_variables(). (Kalle)
– Deprecated ereg extension. (Felipe)

– Added new extensions:
. Added Enchant extension as a way to access spell checkers. (Pierre)
. Added fileinfo extension as replacement for mime_magic extension. (Derick)
. Added intl extension for Internationalization. (Ed B., Vladimir I.,
Dmitry L., Stanislav M., Vadim S., Kirti V.)
. Added mysqlnd extension as replacement for libmysql for ext/mysql, mysqli
and PDO_mysql. (Andrey, Johannes, Ulf)
. Added phar extension for handling PHP Archives. (Greg, Marcus, Steph)
. Added SQLite3 extension. (Scott)

– Added new date/time functionality: (Derick)
. date_parse_from_format(): Parse date/time strings according to a format.
. date_create_from_format()/DateTime::createFromFormat(): Create a date/time
object by parsing a date/time string according to a given format.
. date_get_last_errors()/DateTime::getLastErrors(): Return a list of warnings
and errors that were found while parsing a date/time string through:
. strtotime() / new DateTime
. date_create_from_format() / DateTime::createFromFormat()
. date_parse_from_format().
. support for abbreviation and offset based timezone specifiers for
the ‘e’ format specifier, DateTime::__construct(), DateTime::getTimeZone()
and DateTimeZone::getName().
. support for selectively listing timezone identifiers by continent or
country code through timezone_identifiers_list() /
. timezone_location_get() / DateTimezone::getLocation() for retrieving
location information from timezones.
. date_timestamp_set() / DateTime::setTimestamp() to set a Unix timestamp
without invoking the date parser. (Scott, Derick)
. date_timestamp_get() / DateTime::getTimestamp() to retrieve the Unix
timestamp belonging to a date object.
. two optional parameters to timezone_transitions_get() /
DateTimeZone::getTranstions() to limit the range of transitions being
. support for “first/last day of ” style texts.
. support for date/time strings returned by MS SQL.
. support for serialization and unserialization of DateTime objects.
. support for diffing date/times through date_diff() / DateTime::diff().
. support for adding/subtracting weekdays with strtotime() and
. DateInterval class to represent the difference between two date/times.
. support for parsing ISO intervals for use with DateInterval.
. date_add() / DateTime::add(), date_sub() / DateTime::sub() for applying an
interval to an existing date/time.
. proper support for “this week”, “previous week”/”last week” and “next week”
phrases so that they actually mean the week and not a seven day period
around the current day.
. support for “ of” and “last of” phrases to be used
with months – like in “last saturday of februari 2008”.
. support for “back of ” and “front of ” phrases that are used in
. DatePeriod class which supports iterating over a DateTime object applying
DateInterval on each iteration, up to an end date or limited by maximum
number of occurences.

– Added compatibility mode in GD, imagerotate, image(filled)ellipse
imagefilter, imageconvolution and imagecolormatch are now always enabled.
– Added array_replace() and array_replace_recursive() functions. (Matt)
– Added ReflectionProperty::setAccessible() method that allows non-public
property’s values to be read through ::getValue() and set through
::setValue(). (Derick, Sebastian)
– Added msg_queue_exists() function to sysvmsg extension. (Benjamin Schulz)
– Added Firebird specific attributes that can be set via PDO::setAttribute()
to control formatting of date/timestamp columns: PDO::FB_ATTR_DATE_FORMAT,
– Added gmp_testbit() function. (Stas)
– Added icon format support to getimagesize(). (Scott)
– Added LDAP_OPT_NETWORK_TIMEOUT option for ldap_set_option() to allow
setting network timeout (FR #42837). (Jani)
– Added optional escape character parameter to fgetcsv(). (David Soria Parra)
– Added an optional parameter to strstr() and stristr() for retrieval of either
the part of haystack before or after first occurrence of needle.
(Johannes, Felipe)
– Added xsl->setProfiling() for profiling stylesheets. (Christian)
– Added long-option feature to getopt() and made getopt() available also on
win32 systems by adding a common getopt implementation into core.
(David Soria Parra, Jani)
– Added support for optional values, and = as separator, in getopt(). (Hannes)
– Added lcfirst() function. (David C)
– Added PREG_BAD_UTF8_OFFSET_ERROR constant. (Nuno)
– Added native support for asinh(), acosh(), atanh(), log1p() and expm1().
– Added LIBXML_LOADED_VERSION constant (libxml2 version currently used). (Rob)
– Added JSON_FORCE_OBJECT flag to json_encode(). (Scott, Richard Quadling)
– 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 support for CP850 encoding in mbstring extension.
(Denis Giffeler, Moriyoshi)
– Added stream_cast() and stream_set_options() to user-space stream wrappers,
allowing stream_select(), stream_set_blocking(), stream_set_timeout() and
stream_set_write_buffer() to work with user-space stream wrappers. (Arnaud)
– Added header_remove() function. (chsc at peytz dot dk, Arnaud)
– Added stream_context_get_params() function. (Arnaud)
– Added optional parameter “new” to sybase_connect(). (Timm)
– Added parse_ini_string() function. (grange at lemonde dot fr, Arnaud)
– Added str_getcsv() function. (Sara)
– Added openssl_random_pseudo_bytes() function. (Scott)
– Added ability to send user defined HTTP headers with SOAP request.
(Brian J.France, Dmitry)
– Added concatenation option to bz2.decompress stream filter.
(Keisial at gmail dot com, Greg)
– Added support for using compressed connections with PDO_mysql. (Johannes)
– Added the ability for json_decode() to take a user specified depth. (Scott)
– Added support for the mysql_stmt_next_result() function from libmysql.
– Added function preg_filter() that does grep and replace in one go. (Marcus)
– Added system independent realpath() implementation which caches intermediate
directories in realpath-cache. (Dmitry)
– Added optional clear_realpath_cache and filename parameters to
clearstatcache(). (Jani, Arnaud)
– Added litespeed SAPI module. (George Wang)
– Added ext/hash support to ext/session’s ID generator. (Sara)
– Added quoted_printable_encode() function. (Tony)
– Added stream_context_set_default() function. (Davey Shafik)
– Added optional “is_xhtml” parameter to nl2br() which makes the function
when false and
when true (FR #34381). (Kalle)
– Added PHP_MAXPATHLEN constant (maximum length of a path). (Pierre)
– Added support for SSH via libssh2 in cURL. (Pierre)
– Added support for gray levels PNG image with alpha in GD extension. (Pierre)
– Added support for salsa hashing functions in HASH extension. (Scott)
– Added DOMNode::getLineNo to get line number of parsed node. (Rob)
– Added table info to PDO::getColumnMeta() with SQLite. (Martin Jansen, Scott)
– Added mail logging functionality that allows logging of mail sent via
mail() function. (Ilia)
– Added json_last_error() to return any error information from json_decode().
– Added gethostname() to return the current system host name. (Ilia)
– Added shm_has_var() function. (Mike)
– Added depth parameter to json_decode() to lower the nesting depth from the
maximum if required. (Scott)
– Added pixelation support in imagefilter(). (Takeshi Abe, Kalle)
– Added SplObjectStorage::addAll/removeAll. (Etienne)

– 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)

– Fixed an issue with ReflectionProperty::setAccessible().
(Sebastian, Roman Borschel)
– Fixed html_entity_decode() incorrectly converting numeric html entities
to different characters with cp1251 and cp866. (Scott)
– Fixed an issue in date() where a : was printed for the O modifier after a P
modifier was used. (Derick)
– Fixed exec() on Windows to not eat the first and last double quotes. (Scott)
– Fixed readlink on Windows in thread safe SAPI (apache2.x etc.). (Pierre)
– Fixed a bug causing miscalculations with the “last of month”
relative time string. (Derick)
– Fixed bug causing the algorithm parameter of mhash() to be modified. (Scott)
– Fixed invalid calls to free when internal fileinfo magic file is used. (Scott)
– Fixed memory leak inside wddx_add_vars() function. (Felipe)
– Fixed check in recode extension to allow builing of recode and mysql
extensions when using a recent libmysql. (Johannes)

– Fixed PECL bug #12794 (PDOStatement->nextRowset() doesn’t work). (Johannes)
– Fixed PECL bug #12401 (Add support for ATTR_FETCH_TABLE_NAMES). (Johannes)

– Fixed bug #48696 (ldap_read() segfaults with invalid parameters). (Felipe)
– Fixed bug #48643 (String functions memory issue). (Dmitry)
– Fixed bug #48641 (tmpfile() uses old parameter parsing).
(crrodriguez at opensuse dot org)
– Fixed bug #48624 (.user.ini never gets parsed). (Pierre)
– Fixed bug #48620 (X-PHP-Originating-Script assumes no trailing CRLF in
existing headers). (Ilia)
– Fixed bug #48578 (Can’t build 5.3 on FBSD 4.11). (Rasmus)
– Fixed bug #48535 (file_exists returns false when impersonate is used).
(Kanwaljeet Singla, Venkat Raman Don)
– Fixed bug #48493 (spl_autoload_register() doesn’t work correctly when
prepending functions). (Scott)
– Fixed bug #48215 (Calling a method with the same name as the parent class
calls the constructor). (Scott)
– Fixed bug #48200 (compile failure with mbstring.c when
–enable-zend-multibyte is used). (Jani)
– Fixed bug #48188 (Cannot execute a scrollable cursors twice with PDO_PGSQL).
– Fixed bug #48185 (warning: value computed is not used in
pdo_sqlite_stmt_get_col line 271). (Matteo)
– 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 #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 #47816 (pcntl tests failing on NetBSD). (Matteo)
– Fixed bug #47779 (Wrong value for SIG_UNBLOCK and SIG_SETMASK constants).
– Fixed bug #47771 (Exception during object construction from arg call calls
object’s destructor). (Dmitry)
– Fixed bug #47767 (include_once does not resolve windows symlinks or junctions)
(Kanwaljeet Singla, Venkat Raman Don)
– Fixed bug #47757 (rename JPG to JPEG in phpinfo). (Pierre)
– 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 #47671 (Cloning SplObjectStorage instances). (Etienne)
– Fixed bug #47664 (get_class returns NULL instead of FALSE). (Dmitry)
– Fixed bug #47662 (Support more than 127 subpatterns in preg_match). (Nuno)
– Fixed bug #47596 (Bus error on parsing file). (Dmitry)
– Fixed bug #47572 (Undefined constant causes segmentation fault). (Felipe)
– Fixed bug #47560 (explode()’s limit parameter odd behaviour). (Matt)
– Fixed bug #47549 (get_defined_constants() return array with broken array
categories). (Ilia)
– Fixed bug #47535 (Compilation failure in ps_fetch_from_1_to_8_bytes()).
– Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring
– Fixed bug #47443 (metaphone(‘scratch’) returns wrong result). (Felipe)
– Fixed bug #47438 (mysql_fetch_field ignores zero offset). (Johannes)
– Fixed bug #47398 (PDO_Firebird doesn’t implements quoter correctly). (Felipe)
– Fixed bug #47390 (odbc_fetch_into – BC in php 5.3.0). (Felipe)
– Fixed bug #47359 (Use the expected unofficial mimetype for bmp files). (Scott)
– Fixed bug #47343 (gc_collect_cycles causes a segfault when called within a
destructor in one case). (Dmitry)
– Fixed bug #47320 ($php_errormsg out of scope in functions). (Dmitry)
– Fixed bug #47318 (UMR when trying to activate user config). (Pierre)
– Fixed bug #47243 (OCI8: Crash at shutdown on Windows) (Chris Jones/Oracle
– Fixed bug #47231 (offsetGet error using incorrect offset). (Etienne)
– Fixed bug #47229 (preg_quote() should escape the ‘-‘ char). (Nuno)
– Fixed bug #47165 (Possible memory corruption when passing return value by
reference). (Dmitry)
– Fixed bug #47087 (Second parameter of mssql_fetch_array()). (Felipe)
– Fixed bug #47085 (rename() returns true even if the file in PHAR does not
exist). (Greg)
– Fixed bug #47050 (mysqli_poll() modifies improper variables). (Johannes)
– Fixed bug #47045 (SplObjectStorage instances compared with ==). (Etienne)
– Fixed bug #47038 (Memory leak in include). (Dmitry)
– Fixed bug #47031 (Fix constants in DualIterator example). (Etienne)
– Fixed bug #47021 (SoapClient stumbles over WSDL delivered with
“Transfer-Encoding: chunked”). (Dmitry)
– Fixed bug #46994 (OCI8: CLOB size does not update when using CLOB IN OUT param
in stored procedure) (Chris Jones/Oracle Corp.)
– Fixed bug #46979 (use with non-compound name *has* effect). (Dmitry)
– Fixed bug #46957 (The tokenizer returns deprecated values). (Felipe)
– Fixed bug #46944 (UTF-8 characters outside the BMP aren’t encoded correctly).
– Fixed bug #46897 (ob_flush() should fail to flush unerasable buffers).
(David C.)
– Fixed bug #46849 (Cloning DOMDocument doesn’t clone the properties). (Rob)
– Fixed bug #46847 (phpinfo() is missing some settings). (Hannes)
– Fixed bug #46844 (php scripts or included files with first line starting
with # have the 1st line missed from the output). (Ilia)
– Fixed bug #46817 (tokenizer misses last single-line comment (PHP 5.3+, with
re2c lexer)). (Matt, Shire)
– Fixed bug #46811 (ini_set() doesn’t return false on failure). (Hannes)
– Fixed bug #46763 (mb_stristr() wrong output when needle does not exist).
(Henrique M. Decaria)
– Fixed bug #46755 (warning: use statement with non-compound name). (Dmitry)
– Fixed bug #46746 (xmlrpc_decode_request outputs non-suppressable error when
given bad data). (Ilia)
– Fixed bug #46738 (Segfault when mb_detect_encoding() fails). (Scott)
– Fixed bug #46731 (Missing validation for the options parameter of the
imap_fetch_overview() function). (Ilia)
– Fixed bug #46711 (cURL curl_setopt leaks memory in foreach loops). (magicaltux
[at] php [dot] net)
– Fixed bug #46701 (Creating associative array with long values in the key fails
on 32bit linux). (Shire)
– Fixed bug #46681 (mkdir() fails silently on PHP 5.3). (Hannes)
– Fixed bug #46653 (can’t extend mysqli). (Johannes)
– Fixed bug #46646 (Restrict serialization on some internal classes like Closure
and SplFileInfo using exceptions). (Etienne)
– Fixed bug #46623 (OCI8: phpinfo doesn’t show compile time ORACLE_HOME with
phpize) (Chris Jones/Oracle Corp.)
– Fixed bug #46578 (strip_tags() does not honor end-of-comment when it
encounters a single quote). (Felipe)
– Fixed bug #46546 (Segmentation fault when using declare statement with
non-string value). (Felipe)
– Fixed bug #46542 (Extending PDO class with a __call() function doesn’t work as
expected). (Johannes)
– Fixed bug #46421 (SplFileInfo not correctly handling /). (Etienne)
– Fixed bug #46347 (parse_ini_file() doesn’t support * in keys). (Nuno)
– Fixed bug #46268 (DateTime::modify() does not reset relative time values).
– Fixed bug #46241 (stacked error handlers, internal error handling in general).
– Fixed bug #46238 (Segmentation fault on static call with empty string method).
– Fixed bug #46192 (ArrayObject with objects as storage serialization).
– Fixed bug #46185 (importNode changes the namespace of an XML element). (Rob)
– Fixed bug #46178 (memory leak in ext/phar). (Greg)
– Fixed bug #46160 (SPL – Memory leak when exception is thrown in offsetSet).
– Fixed Bug #46147 (after stream seek, appending stream filter reads incorrect
data). (Greg)
– Fixed bug #46127 (php_openssl_tcp_sockop_accept forgets to set context on
accepted stream) (Mark Karpeles, Pierre)
– Fixed bug #46115 (Memory leak when calling a method using Reflection).
– Fixed bug #46110 (XMLWriter – openmemory() and openuri() leak memory on
multiple calls). (Ilia)
– Fixed bug #46108 (DateTime – Memory leak when unserializing). (Felipe)
– Fixed bug #46106 (Memory leaks when using global statement). (Dmitry)
– Fixed bug #46099 (Xsltprocessor::setProfiling – memory leak). (Felipe, Rob).
– Fixed bug #46087 (DOMXPath – segfault on destruction of a cloned object).
– Fixed bug #46048 (SimpleXML top-level @attributes not part of iterator).
(David C.)
– Fixed bug #46044 (Mysqli – wrong error message). (Johannes)
– Fixed bug #46042 (memory leaks with reflection of mb_convert_encoding()).
– Fixed bug #46039 (ArrayObject iteration is slow). (Arnaud)
– Fixed bug #46033 (Direct instantiation of SQLite3stmt and SQLite3result cause
a segfault.) (Scott)
– Fixed bug #45991 (Ini files with the UTF-8 BOM are treated as invalid).
– Fixed bug #45989 (json_decode() doesn’t return NULL on certain invalid
strings). (magicaltux, Scott)
– Fixed bug #45976 (Moved SXE from SPL to SimpleXML). (Etienne)
– Fixed bug #45928 (large scripts from stdin are stripped at 16K border).
(Christian Schneider, Arnaud)
– Fixed bug #45911 (Cannot disable ext/hash). (Arnaud)
– Fixed bug #45907 (undefined reference to ‘PHP_SHA512Init’). (Greg)
– Fixed bug #45826 (custom ArrayObject serialization). (Etienne)
– Fixed bug #45820 (Allow empty keys in ArrayObject). (Etienne)
– Fixed bug #45791 (json_decode() doesn’t convert 0e0 to a double). (Scott)
– Fixed bug #45786 (FastCGI process exited unexpectedly). (Dmitry)
– Fixed bug #45757 (FreeBSD4.11 build failure: failed include; stdint.h).
– Fixed bug #45743 (property_exists fails to find static protected member in
child class). (Felipe)
– Fixed bug #45717 (Fileinfo/libmagic build fails, missing err.h and getopt.h).
– Fixed bug #45706 (Unserialization of classes derived from ArrayIterator
fails). (Etienne, Dmitry)
– Fixed bug #45696 (Not all DateTime methods allow method chaining). (Derick)
– Fixed bug #45682 (Unable to var_dump(DateInterval)). (Derick)
– Fixed bug #45447 (Filesystem time functions on Vista and server 2008).
– Fixed bug #45432 (PDO: persistent connection leak). (Felipe)
– Fixed bug #45392 (ob_start()/ob_end_clean() and memory_limit). (Ilia)
– Fixed bug #45384 (parse_ini_file will result in parse error with no trailing
newline). (Arnaud)
– Fixed bug #45382 (timeout bug in stream_socket_enable_crypto). (vnegrier at
optilian dot com, Ilia)
– Fixed bug #45044 (relative paths not resolved correctly). (Dmitry)
– Fixed bug #44861 (scrollable cursor don’t work with pgsql). (Matteo)
– Fixed bug #44842 (parse_ini_file keys that start/end with underscore).
– Fixed bug #44575 (parse_ini_file comment # line problems). (Arnaud)
– Fixed bug #44409 (PDO::FETCH_SERIALIZE calls __construct()). (Matteo)
– Fixed bug #44173 (PDO->query() parameter parsing/checking needs an update).
– Fixed bug #44154 (pdo->errorInfo() always have three elements in the returned
array). (David C.)
– Fixed bug #44153 (pdo->errorCode() returns NULL when there are no errors).
(David C.)
– Fixed bug #44135 (PDO MySQL does not support CLIENT_FOUND_ROWS). (Johannes,
chx1975 at gmail dot com)
– Fixed bug #44100 (Inconsistent handling of static array declarations with
duplicate keys). (Dmitry)
– Fixed bug #43831 ($this gets mangled when extending PDO with persistent
connection). (Felipe)
– Fixed bug #43817 (opendir() fails on Windows directories with parent directory
unaccessible). (Dmitry)
– Fixed bug #43069 (SoapClient causes 505 HTTP Version not supported error
message). (Dmitry)
– Fixed bug #43008 (php://filter uris ignore url encoded filternames and can’t
handle slashes). (Arnaud)
– Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
(Scott, Edward Z. Yang)
– Fixed bug #41874 (separate STDOUT and STDERR in exec functions). (Kanwaljeet
Singla, Venkat Raman Don, Pierre)
– Fixed bug #41534 (SoapClient over HTTPS fails to reestablish connection).
– Fixed bug #38802 (max_redirects and ignore_errors). (patch by
– Fixed bug #35980 (touch() works on files but not on directories). (Pierre)

17 Jun 2009, PHP 5.2.10
– Updated timezone database to version 2009.9 (2009i) (Derick)

– Added “ignore_errors” option to http fopen wrapper. (David Zulke, Sara)
and CURLPROTO_* for redirect fixes in CURL 7.19.4. (Yoram Bar Haim, Stas)
– Added support for Sun CC (FR #46595 and FR #46513). (David Soria Parra)

– Changed default value of array_unique()’s optional sorting type parameter
back to SORT_STRING to fix backwards compatibility breakage introduced in
PHP 5.2.9. (Moriyoshi)

– Fixed memory corruptions while reading properties of zip files. (Ilia)
– Fixed memory leak in ob_get_clean/ob_get_flush. (Christian)
– Fixed segfault on invalid session.save_path. (Hannes)
– Fixed leaks in imap when a mail_criteria is used. (Pierre)
– Fixed missing erealloc() in fix for Bug #40091 in spl_autoload_register. (Greg)

– Fixed bug #48562 (Reference recursion causes segfault when used in
wddx_serialize_vars()). (Felipe)
– Fixed bug #48557 (Numeric string keys in Apache Hashmaps are not cast to
integers). (David Zuelke)
– Fixed bug #48518 (curl crashes when writing into invalid file handle). (Tony)
– Fixed bug #48514 (cURL extension uses same resource name for simple and
multi APIs). (Felipe)
– Fixed bug #48469 (ldap_get_entries() leaks memory on empty search
results). (Patrick)
– Fixed bug #48456 (CPPFLAGS not restored properly in phpize.m4). (Jani,
spisek at kerio dot com)
– Fixed bug #48448 (Compile failure under IRIX 6.5.30 building cast.c).
– Fixed bug #48441 (ldap_search() sizelimit, timelimit and deref options
persist). (Patrick)
– Fixed bug #48434 (Improve memory_get_usage() accuracy). (Arnaud)
– Fixed bug #48416 (Force a cache limit in ereg() to stop excessive memory
usage). (Scott)
– Fixed bug #48409 (Crash when exception is thrown while passing function
arguments). (Arnaud)
– Fixed bug #48378 (exif_read_data() segfaults on certain corrupted .jpeg
files). (Pierre)
– Fixed bug #48359 (Script hangs on snmprealwalk if OID is not increasing).
(Ilia, simonov at gmail dot com)
– Fixed bug #48336 (ReflectionProperty::getDeclaringClass() does not work
with redeclared property).
(patch by Markus dot Lidel at shadowconnect dot com)
– Fixed bug #48326 (constant MSG_DONTWAIT not defined). (Arnaud)
– Fixed bug #48313 (fgetcsv() does not return null for empty rows). (Ilia)
– Fixed bug #48309 (stream_copy_to_stream() and fpasstru() do not update
stream position of plain files). (Arnaud)
– Fixed bug #48307 (stream_copy_to_stream() copies 0 bytes when $source is a
socket). (Arnaud)
– Fixed bug #48273 (snmp*_real_walk() returns SNMP errors as values).
(Ilia, lytboris at gmail dot com)
– Fixed bug #48256 (Crash due to double-linking of history.o).
(tstarling at wikimedia dot org)
– Fixed bug #48248 (SIGSEGV when access to private property via &__get).
– Fixed bug #48247 (Crash on errors during startup). (Stas)
– Fixed bug #48240 (DBA Segmentation fault dba_nextkey). (Felipe)
– Fixed bug #48224 (Incorrect shuffle in array_rand). (Etienne)
– Fixed bug #48221 (memory leak when passing invalid xslt parameter).
– Fixed bug #48207 (CURLOPT_(FILE|WRITEHEADER options do not error out when
working with a non-writable stream). (Ilia)
– Fixed bug #48206 (Iterating over an invalid data structure with
RecursiveIteratorIterator leads to a segfault). (Scott)
– Fixed bug #48204 (xmlwriter_open_uri() does not emit warnings on invalid
paths). (Ilia)
– Fixed bug #48203 (Crash when CURLOPT_STDERR is set to regular file). (Jani)
– Fixed bug #48202 (Out of Memory error message when passing invalid file
path) (Pierre)
– Fixed bug #48156 (Added support for lcov v1.7). (Ilia)
– Fixed bug #48132 (configure check for curl ssl support fails with
–disable-rpath). (Jani)
– Fixed bug #48131 (Don’t try to bind ipv4 addresses to ipv6 ips via bindto).
– Fixed bug #48070 (PDO_OCI: Segfault when using persistent connection).
(Pierre, Matteo, jarismar dot php at gmail dot com)
– Fixed bug #48058 (Year formatter goes wrong with out-of-int range). (Derick)
– Fixed bug #48038 (odbc_execute changes variables used to form params array).
– Fixed bug #47997 (stream_copy_to_stream returns 1 on empty streams). (Arnaud)
– Fixed bug #47991 (SSL streams fail if error stack contains items). (Mikko)
– Fixed bug #47981 (error handler not called regardless). (Hannes)
– Fixed bug #47969 (ezmlm_hash() returns different values depend on OS). (Ilia)
– Fixed bug #47946 (ImageConvolution overwrites background). (Ilia)
– Fixed bug #47940 (memory leaks in imap_body). (Pierre, Jake Levitt)
– Fixed bug #47937 (system() calls sapi_flush() regardless of output
buffering). (Ilia)
– Fixed bug #47903 (“@” operator does not work with string offsets). (Felipe)
– Fixed bug #47893 (CLI aborts on non blocking stdout). (Arnaud)
– Fixed bug #47849 (Non-deep import loses the namespace). (Rob)
– Fixed bug #47845 (PDO_Firebird omits first row from query). (Lars W)
– Fixed bug #47836 (array operator [] inconsistency when the array has
PHP_INT_MAX index value). (Matt)
– Fixed bug #47831 (Compile warning for strnlen() in main/spprintf.c).
(Ilia, rainer dot jung at kippdata dot de)
– Fixed bug #47828 (openssl_x509_parse() segfaults when a UTF-8 conversion
fails). (Scott, Kees Cook, Pierre)
– Fixed bug #47818 (Segfault due to bound callback param). (Felipe)
– Fixed bug #47801 (__call() accessed via parent:: operator is provided
incorrect method name). (Felipe)
– Fixed bug #47769 (Strange extends PDO). (Felipe)
– Fixed bug #47745 (FILTER_VALIDATE_INT doesn’t allow minimum integer).
– Fixed bug #47721 (Alignment issues in mbstring and sysvshm extension).
(crrodriguez at opensuse dot org, Ilia)
– Fixed bug #47704 (PHP crashes on some “bad” operations with string
offsets). (Dmitry)
– Fixed bug #47695 (build error when xmlrpc and iconv are compiled against
different iconv versions). (Scott)
– Fixed bug #47667 (ZipArchive::OVERWRITE seems to have no effect).
(Mikko, Pierre)
– Fixed bug #47644 (Valid integers are truncated with json_decode()). (Scott)
– Fixed bug #47639 (pg_copy_from() WARNING: nonstandard use of \\ in a
string literal). (Ilia)
– Fixed bug #47616 (curl keeps crashing). (Felipe)
– Fixed bug #47598 (FILTER_VALIDATE_EMAIL is locale aware). (Ilia)
– Fixed bug #47566 (pcntl_wexitstatus() returns signed status).
(patch by james at jamesreno dot com)
– Fixed bug #47564 (unpacking unsigned long 32bit bit endian returns wrong
result). (Ilia)
– Fixed bug #47487 (performance degraded when reading large chunks after
fix of bug #44607). (Arnaud)
– Fixed bug #47468 (enable cli|cgi-only extensions for embed sapi). (Jani)
– Fixed bug #47435 (FILTER_FLAG_NO_PRIV_RANGE does not work with ipv6
addresses in the filter extension). (Ilia)
– Fixed bug #47430 (Errors after writing to nodeValue parameter of an absent
previousSibling). (Rob)
– Fixed bug #47365 (ip2long() may allow some invalid values on certain 64bit
systems). (Ilia)
– Fixed bug #47254 (Wrong Reflection for extends class). (Felipe)
– Fixed bug #47042 (cgi sapi is incorrectly removing SCRIPT_FILENAME).
(Sriram Natarajan, David Soria Parra)
– Fixed bug #46882 (Serialize / Unserialize misbehaviour under OS with
different bit numbers). (Matt)
– Fixed bug #46812 (get_class_vars() does not include visible private variable
looking at subclass). (Arnaud)
– Fixed bug #46386 (Digest authentication with SOAP module fails against MSSQL
SOAP services). (Ilia, lordelph at gmail dot com)
– Fixed bug #46109 (Memory leak when mysqli::init() is called multiple times).
– Fixed bug #45997 (safe_mode bypass with exec/system/passthru (windows only)).
– Fixed bug #45877 (Array key ‘2147483647’ left as string). (Matt)
– Fixed bug #45822 (Near infinite-loops while parsing huge relative offsets).
(Derick, Mike Sullivan)
– Fixed bug #45799 (imagepng() crashes on empty image).
(Martin McNickle, Takeshi Abe)
– Fixed bug #45622 (isset($arrayObject->p) misbehaves with
ArrayObject::ARRAY_AS_PROPS set). (robin_fernandes at uk dot ibm dot com, Arnaud)
– Fixed bug #45614 (ArrayIterator::current(), ::key() can show 1st private prop
of wrapped object). (robin_fernandes at uk dot ibm dot com, Arnaud)
– Fixed bug #45540 (stream_context_create creates bad http request). (Arnaud)
– Fixed bug #45202 (zlib.output_compression can not be set with ini_set()).
– Fixed bug #45191 (error_log ignores date.timezone php.ini val when setting
logging timestamps). (Derick)
– Fixed bug #45092 (header HTTP context option not being used when compiled
using –with-curlwrappers). (Jani)
– Fixed bug #44996 (xmlrpc_decode() ignores time zone on iso8601.datetime).
(Ilia, kawai at apache dot org)
– Fixed bug #44827 (define() is missing error checks for class constants).
– Fixed bug #44214 (Crash using preg_replace_callback() and global variables).
(Nuno, Scott)
– Fixed bug #43073 (TrueType bounding box is wrong for angle<>0).
(Martin McNickle)
– Fixed bug #42663 (gzinflate() try to allocate all memory with truncated
data). (Arnaud)
– Fixed bug #42414 (some odbc_*() functions incompatible with Oracle ODBC
driver). (jhml at gmx dot net)
– Fixed bug #42362 (HTTP status codes 204 and 304 should not be gzipped).
(Scott, Edward Z. Yang)
– Fixed bug #42143 (The constant NAN is reported as 0 on Windows)
(Kanwaljeet Singla, Venkat Raman Don)
– Fixed bug #38805 (PDO truncates text from SQL Server text data type field).

分类: php学习 标签: ,

19 Nov 2009, PHP 5.3.1 update news

2013年6月12日 没有评论

19 Nov 2009, PHP 5.3.1
– Upgraded bundled sqlite to version 3.6.19. (Scott)
– Updated timezone database to version 2009.17 (2009q). (Derick)

– Changed ini file directives [PATH=](on Win32) and [HOST=](on all) to be case
insensitive. (garretts)

– Restored shebang line check to CGI sapi (not checked by scanner anymore).

– Added “max_file_uploads” INI directive, which can be set to limit the
number of file uploads per-request to 20 by default, to prevent possible
DOS via temporary file exhaustion. (Ilia)
– Added missing sanity checks around exif processing. (Ilia)
– Added error constant when json_encode() detects an invalid UTF-8 sequence.
– Added support for ACL on Windows for thread safe SAPI (Apache2 for example)
and fix its support on NTS. (Pierre)

– Improved symbolic, mounted volume and junctions support for realpath on
Windows. (Pierre)
– Improved readlink on Windows, suppress \??\ and use the drive syntax only.
– Improved dns_get_record() AAAA support on windows. Always available when
IPv6 is support is installed, format is now the same than on unix. (Pierre)
– Improved the DNS functions on OSX to use newer APIs, also use Bind 9 API
where available on other platforms. (Scott)
– Improved shared extension loading on OSX to use the standard Unix dlopen()
API. (Scott)

– Fixed crash in com_print_typeinfo when an invalid typelib is given. (Pierre)
– Fixed a safe_mode bypass in tempnam() identified by Grzegorz Stachowiak.
– Fixed a open_basedir bypass in posix_mkfifo() identified by Grzegorz
Stachowiak. (Rasmus)
– Fixed certificate validation inside php_openssl_apply_verification_policy
(Ryan Sleevi, Ilia)
– Fixed crash in SQLiteDatabase::ArrayQuery() and SQLiteDatabase::SingleQuery()
when calling using Reflection. (Felipe)
– Fixed crash when instantiating PDORow and PDOStatement through Reflection.
– Fixed sanity check for the color index in imagecolortransparent. (Pierre)
– Fixed scandir/readdir when used mounted points on Windows. (Pierre)
– Fixed zlib.deflate compress filter to actually accept level parameter. (Jani)
– Fixed leak on error in popen/exec (and related functions) on Windows.
– Fixed possible bad caching of symlinked directories in the realpath cache
on Windows. (Pierre)
– Fixed atime and mtime in stat related functions on Windows. (Pierre)
– Fixed spl_autoload_unregister/spl_autoload_functions wrt. Closures and
Functors. (Christian Seiler)
– Fixed open_basedir circumvention for “mail.log” ini directive.
(Maksymilian Arciemowicz, Stas)
– Fixed signature generation/validation for zip archives in ext/phar. (Greg)
– Fixed memory leak in stream_is_local(). (Felipe, Tony)
– Fixed BC break in mime_content_type(), removes the content encoding. (Scott)

– Fixed PECL bug #16842 (oci_error return false when NO_DATA_FOUND is raised).
(Chris Jones)

– Fixed bug #50063 (safe_mode_include_dir fails). (Johannes, christian at
elmerot dot se)
– Fixed bug #50052 (Different Hashes on Windows and Linux on wrong Salt size).
– Fixed bug #49986 (Missing ICU DLLs on windows package). (Pierre)
– Fixed bug #49910 (no support for ././@LongLink for long filenames in phar
tar support). (Greg)
– Fixed bug #49908 (throwing exception in __autoload crashes when interface
is not defined). (Felipe)
– Fixed bug #49847 (exec() fails to return data inside 2nd parameter, given
output lines >4095 bytes). (Ilia)
– Fixed bug #49809 (time_sleep_until() is not available on OpenSolaris). (Jani)
– Fixed bug #49757 (long2ip() can return wrong value in a multi-threaded
applications). (Ilia, Florian Anderiasch)
– Fixed bug #49738 (calling mcrypt after mcrypt_generic_deinit crashes).
(Sriram Natarajan)
– Fixed bug #49732 (crashes when using fileinfo when timestamp conversion
fails). (Pierre)
– Fixed bug #49698 (Unexpected change in strnatcasecmp()). (Rasmus)
– Fixed bug #49630 (imap_listscan function missing). (Felipe)
– Fixed bug #49572 (use of C++ style comments causes build failure).
(Sriram Natarajan)
– Fixed bug #49531 (CURLOPT_INFILESIZE sometimes causes warning “CURLPROTO_FILE
cannot be set”). (Felipe)
– Fixed bug #49517 (cURL’s CURLOPT_FILE prevents file from being deleted after
fclose). (Ilia)
– Fixed bug #49470 (FILTER_SANITIZE_EMAIL allows disallowed characters).
– Fixed bug #49447 (php engine need to correctly check for socket API
return status on windows). (Sriram Natarajan)
– Fixed bug #49391 (ldap.c utilizing deprecated ldap_modify_s). (Ilia)
– Fixed bug #49372 (segfault in php_curl_option_curl). (Pierre)
– Fixed bug #49361 (wordwrap() wraps incorrectly on end of line boundaries).
(Ilia, code-it at mail dot ru)
– Fixed bug #49306 (inside pdo_mysql default socket settings are ignored).
– Fixed bug #49289 (bcmath module doesn’t compile with phpize configure).
– Fixed bug #49286 (php://input (php_stream_input_read) is broken). (Jani)
– Fixed bug #49269 (Ternary operator fails on Iterator object when used inside
foreach declaration). (Etienne, Dmitry)
– Fixed bug #49236 (Missing PHP_SUBST(PDO_MYSQL_SHARED_LIBADD)). (Jani)
– Fixed bug #49223 (Inconsistency using get_defined_constants). (Garrett)
– Fixed bug #49193 (gdJpegGetVersionString() inside gd_compact identifies
wrong type in declaration). (Ilia)
– Fixed bug #49183 (dns_get_record does not return NAPTR records). (Pierre)
– Fixed bug #49144 (Import of schema from different host transmits original
authentication details). (Dmitry)
– Fixed bug #49142 (crash when exception thrown from __tostring()).
(David Soria Parra)
– Fixed bug #49132 (posix_times returns false without error).
(phpbugs at gunnu dot us)
– Fixed bug #49125 (Error in dba_exists C code). (jdornan at stanford dot edu)
– Fixed bug #49122 (undefined reference to mysqlnd_stmt_next_result on compile
with –with-mysqli and MySQL 6.0). (Jani)
– Fixed bug #49108 (2nd scan_dir produces segfault). (Felipe)
– Fixed bug #49098 (mysqli segfault on error). (Rasmus)
– Fixed bug #49095 (proc_get_status[‘exitcode’] fails on win32). (Felipe)
– Fixed bug #49092 (ReflectionFunction fails to work with functions in fully
qualified namespaces). (Kalle, Jani)
– Fixed bug #49074 (private class static fields can be modified by using
reflection). (Jani)
– Fixed bug #49072 (feof never returns true for damaged file in zip). (Pierre)
– Fixed bug #49065 (“disable_functions” php.ini option does not work on
Zend extensions). (Stas)
– Fixed bug #49064 (–enable-session=shared does not work: undefined symbol:
php_url_scanner_reset_vars). (Jani)
– Fixed bug #49056 (parse_ini_file() regression in 5.3.0 when using non-ASCII
strings as option keys). (Jani)
– Fixed bug #49052 (context option headers freed too early when using
–with-curlwrappers). (Jani)
– Fixed bug #49047 (The function touch() fails on directories on Windows).
– Fixed bug #49032 (SplFileObject::fscanf() variables passed by reference).
– Fixed bug #49027 (mysqli_options() doesn’t work when using mysqlnd). (Andrey)
– Fixed bug #49026 (proc_open() can bypass safe_mode_protected_env_vars
restrictions). (Ilia)
– Fixed bug #49020 (phar misinterprets ustar long filename standard).
– Fixed bug #49018 (phar tar stores long filenames wit prefix/name reversed).
– Fixed bug #49014 (dechunked filter broken when serving more than 8192 bytes
in a chunk). (andreas dot streichardt at globalpark dot com, Ilia)
– Fixed bug #49012 (phar tar signature algorithm reports as Unknown (0) in
getSignature() call). (Greg)
– Fixed bug #49000 (PHP CLI in Interactive mode (php -a) crashes
when including files from function). (Stas)
– Fixed bug #48994 (zlib.output_compression does not output HTTP headers when
set to a string value). (Jani)
– Fixed bug #48980 (Crash when compiling with pdo_firebird). (Felipe)
– Fixed bug #48962 (cURL does not upload files with specified filename).
– Fixed bug #48929 (Double \r\n after HTTP headers when “header” context
option is an array). (David Zülke)
– Fixed bug #48913 (Too long error code strings in pdo_odbc driver).
(naf at altlinux dot ru, Felipe)
– Fixed bug #48912 (Namespace causes unexpected strict behaviour with
extract()). (Dmitry)
– Fixed bug #48909 (Segmentation fault in mysqli_stmt_execute()). (Andrey)
– Fixed bug #48899 (is_callable returns true even if method does not exist in
parent class). (Felipe)
– Fixed bug #48893 (Problems compiling with Curl). (Felipe)
– Fixed bug #48880 (Random Appearing open_basedir problem). (Rasmus, Gwynne)
– Fixed bug #48872 (string.c: errors: duplicate case values). (Kalle)
– Fixed bug #48854 (array_merge_recursive modifies arrays after first one).
– Fixed bug #48805 (IPv6 socket transport is not working). (Ilia)
– Fixed bug #48802 (printf() returns incorrect outputted length). (Jani)
– Fixed bug #48791 (open office files always reported as corrupted). (Greg)
– Fixed bug #48788 (RecursiveDirectoryIterator doesn’t descend into symlinked
directories). (Ilia)
– Fixed bug #48783 (make install will fail saying phar file exists). (Greg)
– Fixed bug #48774 (SIGSEGVs when using curl_copy_handle()).
(Sriram Natarajan)
– Fixed bug #48771 (rename() between volumes fails and reports no error on
Windows). (Pierre)
– Fixed bug #48768 (parse_ini_*() crash with INI_SCANNER_RAW). (Jani)
– Fixed bug #48763 (ZipArchive produces corrupt archive). (dani dot church at
gmail dot com, Pierre)
– Fixed bug #48762 (IPv6 address filter still rejects valid address). (Felipe)
– Fixed bug #48757 (ReflectionFunction::invoke() parameter issues). (Kalle)
– Fixed bug #48754 (mysql_close() crash php when no handle specified).
(Johannes, Andrey)
– Fixed bug #48752 (Crash during date parsing with invalid date). (Pierre)
– Fixed bug #48746 (Unable to browse directories within Junction Points).
(Pierre, Kanwaljeet Singla)
– Fixed bug #48745 (mysqlnd: mysql_num_fields returns wrong column count for
mysql_list_fields). (Andrey)
– Fixed bug #48740 (PHAR install fails when INSTALL_ROOT is not the final
install location). (james dot cohen at digitalwindow dot com, Greg)
files that have been opened with r+). (Ilia)
– Fixed bug #48719 (parse_ini_*(): scanner_mode parameter is not checked for
sanity). (Jani)
– Fixed bug #48718 (FILTER_VALIDATE_EMAIL does not allow numbers in domain
components). (Ilia)
– Fixed bug #48681 (openssl signature verification for tar archives broken).
– Fixed bug #48660 (parse_ini_*(): dollar sign as last character of value
fails). (Jani)
– Fixed bug #48645 (mb_convert_encoding() doesn’t understand hexadecimal
html-entities). (Moriyoshi)
– Fixed bug #48637 (“file” fopen wrapper is overwritten when using
–with-curlwrappers). (Jani)
– Fixed bug #48608 (Invalid libreadline version not detected during configure).
– Fixed bug #48400 (imap crashes when closing stream opened with
OP_PROTOTYPE flag). (Jani)
– Fixed bug #48377 (error message unclear on converting phar with existing
file). (Greg)
– Fixed bug #48247 (Infinite loop and possible crash during startup with
errors when errors are logged). (Jani)
– Fixed bug #48198 error: ‘MYSQLND_LLU_SPEC’ undeclared. Cause for #48780 and
#46952 – both fixed too. (Andrey)
– Fixed bug #48189 (ibase_execute error in return param). (Kalle)
– Fixed bug #48182 (ssl handshake fails during asynchronous socket connection).
(Sriram Natarajan)
– Fixed bug #48116 (Fixed build with Openssl 1.0). (Pierre,
Al dot Smith at aeschi dot ch dot eu dot org)
– Fixed bug #48057 (Only the date fields of the first row are fetched, others
are empty). (info at programmiernutte dot net)
– Fixed bug #47481 (natcasesort() does not sort extended ASCII characters
correctly). (Herman Radtke)
– Fixed bug #47351 (Memory leak in DateTime). (Derick, Tobias John)
– Fixed bug #47273 (Encoding bug in SoapServer->fault). (Dmitry)
– Fixed bug #46682 (touch() afield returns different values on windows).
– Fixed bug #46614 (Extended MySQLi class gives incorrect empty() result).
– Fixed bug #46020 (with Sun Java System Web Server 7.0 on HPUX, #define HPUX).
(Uwe Schindler)
– Fixed bug #45905 (imagefilledrectangle() clipping error).
(markril at hotmail dot com, Pierre)
– Fixed bug #45554 (Inconsistent behavior of the u format char). (Derick)
– Fixed bug #45141 (setcookie will output expires years of >4 digits). (Ilia)
– Fixed bug #44683 (popen crashes when an invalid mode is passed). (Pierre)
– Fixed bug #43510 (stream_get_meta_data() does not return same mode as used
in fopen). (Jani)
– Fixed bug #42434 (ImageLine w/ antialias = 1px shorter). (wojjie at gmail dot
com, Kalle)
– Fixed bug #40013 (php_uname() does not return nodename on Netware (Guenter
– Fixed bug #38091 (Mail() does not use FQDN when sending SMTP helo).
(Kalle, Rick Yorgason)
– Fixed bug #28038 (Sent incorrect RCPT TO commands to SMTP server) (Garrett)
– Fixed bug #27051 (Impersonation with FastCGI does not exec process as
impersonated user). (Pierre)

分类: php学习 标签: ,

04 Mar 2010, PHP 5.3.2 update news

2013年6月11日 没有评论

04 Mar 2010, PHP 5.3.2

– Upgraded bundled sqlite to version 3.6.22. (Ilia)
– Upgraded bundled libmagic to version 5.03. (Mikko)
– Upgraded bundled PCRE to version 8.00. (Scott)
– Updated timezone database to version 2010.3. (Derick)

– Improved LCG entropy. (Rasmus, Samy Kamkar)
– Improved crypt support for edge cases (UFC compatibility). (Solar Designer,
Joey, Pierre)

– Reverted fix for bug #49521 (PDO fetchObject sets values before calling
constructor). (Pierrick, Johannes)

– Changed gmp_strval() to use full range from 2 to 62, and -2 to -36. FR #50283
(David Soria Parra)
– Changed “post_max_size” php.ini directive to allow unlimited post size by
setting it to 0. (Rasmus)
– Changed tidyNode class to disallow manual node creation. (Pierrick)

– Removed automatic file descriptor unlocking happening on shutdown and/or
stream close (on all OSes). (Tony, Ilia)

– Added libpng 1.4.0 support. (Pierre)
– Added support for DISABLE_AUTHENTICATOR for imap_open. (Pierre)
– Added missing host validation for HTTP urls inside FILTER_VALIDATE_URL.
– Added stream_resolve_include_path(). (Mikko)
– Added INTERNALDATE support to imap_append. (nick at mailtrust dot com)
– Added support for SHA-256 and SHA-512 to php’s crypt. (Pierre)
– Added realpath_cache_size() and realpath_cache_get() functions. (Stas)
– Added FILTER_FLAG_STRIP_BACKTICK option to the filter extension. (Ilia)
– Added protection for $_SESSION from interrupt corruption and improved
“session.save_path” check. (Stas)
– Added LIBXML_PARSEHUGE constant to override the maximum text size of a
single text node when using libxml2.7.3+. (Kalle)
– Added ReflectionMethod::setAccessible() for invoking non-public methods
through the Reflection API. (Sebastian)
– Added Collator::getSortKey for intl extension. (Stas)
– Added support for CURLOPT_POSTREDIR. FR #49571. (Sriram Natarajan)
– Added support for CURLOPT_CERTINFO. FR #49253.
(Linus Nielsen Feltzing )
– Added client-side server name indication support in openssl. (Arnaud)

– Improved fix for bug #50006 (Segfault caused by uksort()). (Stas)

– Fixed mysqlnd hang when queries exactly 16777214 bytes long are sent. (Andrey)
– Fixed incorrect decoding of 5-byte BIT sequences in mysqlnd. (Andrey)
– Fixed error_log() to be binary safe when using message_type 3. (Jani)
– Fixed unnecessary invocation of setitimer when timeouts have been disabled.
(Arvind Srinivasan)
– Fixed memory leak in extension loading when an error occurs on Windows.
– Fixed safe_mode validation inside tempnam() when the directory path does
not end with a /). (Martin Jansen)
– Fixed a possible open_basedir/safe_mode bypass in session extension
identified by Grzegorz Stachowiak. (Ilia)
– Fixed possible crash when a error/warning is raised during php startup.
– Fixed possible bad behavior of rename on windows when used with symbolic
links or invalid paths. (Pierre)
– Fixed error output to stderr on Windows. (Pierre)
– Fixed memory leaks in is_writable/readable/etc on Windows. (Pierre)
– Fixed memory leaks in the ACL function on Windows. (Pierre)
– Fixed memory leak in the realpath cache on Windows. (Pierre)
– Fixed memory leak in zip_close. (Pierre)
– Fixed crypt’s blowfish sanity check of the “setting” string, to reject
iteration counts encoded as 36 through 39. (Solar Designer, Joey, Pierre)

– Fixed bug #51059 (crypt crashes when invalid salt are given). (Pierre)
– Fixed bug #50952 (allow underscore _ in constants parsed in php.ini files).
– Fixed bug #50940 (Custom content-length set incorrectly in Apache SAPIs).
(Brian France, Rasmus)
– Fixed bug #50930 (Wrong date by php_date.c patch with ancient gcc/glibc
versions). (Derick)
– Fixed bug #50907 (X-PHP-Originating-Script adding two new lines in *NIX).
– Fixed bug #50859 (build fails with openssl 1.0 due to md2 deprecation).
(Ilia, hanno at hboeck dot de)
– Fixed bug #50847 (strip_tags() removes all tags greater then 1023 bytes
long). (Ilia)
– Fixed bug #50829 (php.ini directive pdo_mysql.default_socket is ignored).
– Fixed bug #50832 (HTTP fopen wrapper does not support passwordless HTTP
authentication). (Jani)
– Fixed bug #50787 (stream_set_write_buffer() has no effect on socket streams).
(vnegrier at optilian dot com, Ilia)
– Fixed bug #50761 (system.multiCall crashes in xmlrpc extension).
(hiroaki dot kawai at gmail dot com, Ilia)
– Fixed bug #50756 (CURLOPT_FTP_SKIP_PASV_IP does not exist). (Sriram)
– Fixed bug #50732 (exec() adds single byte twice to $output array). (Ilia)
– Fixed bug #50728 (All PDOExceptions hardcode ‘code’ property to 0).
(Joey, Ilia)
– Fixed bug #50723 (Bug in garbage collector causes crash). (Dmitry)
– Fixed bug #50690 (putenv does not set ENV when the value is only one char).
– Fixed bug #50680 (strtotime() does not support eighth ordinal number). (Ilia)
– Fixed bug #50661 (DOMDocument::loadXML does not allow UTF-16). (Rob)
– Fixed bug #50657 (copy() with an empty (zero-byte) HTTP source succeeds but
returns false). (Ilia)
– Fixed bug #50636 (MySQLi_Result sets values before calling constructor).
– Fixed bug #50632 (filter_input() does not return default value if the
variable does not exist). (Ilia)
– Fixed bug #50576 (XML_OPTION_SKIP_TAGSTART option has no effect). (Pierrick)
– Fixed bug #50558 (Broken object model when extending tidy). (Pierrick)
– Fixed bug #50540 (Crash while running ldap_next_reference test cases).
– Fixed bug #50519 (segfault in garbage collection when using set_error_handler
and DomDocument). (Dmitry)
– Fixed bug #50508 (compile failure: Conflicting HEADER type declarations).
– Fixed bug #50496 (Use of is valid only in a c99 compilation
environment. (Sriram)
– Fixed bug #50464 (declare encoding doesn’t work within an included file).
– Fixed bug #50458 (PDO::FETCH_FUNC fails with Closures). (Felipe, Pierrick)
– Fixed bug #50445 (PDO-ODBC stored procedure call from Solaris 64-bit causes
seg fault). (davbrown4 at yahoo dot com, Felipe)
– Fixed bug #50416 (PROCEDURE db.myproc can’t return a result set in the given
context). (Andrey)
– Fixed bug #50394 (Reference argument converted to value in __call). (Stas)
– Fixed bug #50351 (performance regression handling objects, ten times slower
in 5.3 than in 5.2). (Dmitry)
– Fixed bug #50392 (date_create_from_format() enforces 6 digits for ‘u’
format character). (Ilia)
– Fixed bug #50345 (nanosleep not detected properly on some solaris versions).
– Fixed bug #50340 (php.ini parser does not allow spaces in ini keys). (Jani)
– Fixed bug #50334 (crypt ignores sha512 prefix). (Pierre)
– Fixed bug #50323 (Allow use of ; in values via ;; in PDO DSN).
(Ilia, Pierrick)
– Fixed bug #50285 (xmlrpc does not preserve keys in encoded indexed arrays).
– Fixed bug #50282 (xmlrpc_encode_request() changes object into array in
calling function). (Felipe)
– Fixed bug #50267 (get_browser(null) does not use HTTP_USER_AGENT). (Jani)
– Fixed bug #50266 (conflicting types for llabs). (Jani)
– Fixed bug #50261 (Crash When Calling Parent Constructor with
call_user_func()). (Dmitry)
– Fixed bug #50255 (isset() and empty() silently casts array to object).
– Fixed bug #50240 (pdo_mysql.default_socket in php.ini shouldn’t used
if it is empty). (foutrelis at gmail dot com, Ilia)
– Fixed bug #50231 (Socket path passed using –with-mysql-sock is ignored when
mysqlnd is enabled). (Jani)
– Fixed bug #50219 (soap call Segmentation fault on a redirected url).
– Fixed bug #50212 (crash by ldap_get_option() with LDAP_OPT_NETWORK_TIMEOUT).
(Ilia, shigeru_kitazaki at cybozu dot co dot jp)
– Fixed bug #50209 (Compiling with libedit cannot find readline.h).
(tcallawa at redhat dot com)
– Fixed bug #50207 (segmentation fault when concatenating very large strings on
64bit linux). (Ilia)
– Fixed bug #50196 (stream_copy_to_stream() produces warning when source is
not file). (Stas)
– Fixed bug #50195 (pg_copy_to() fails when table name contains schema. (Ilia)
– Fixed bug #50185 (ldap_get_entries() return false instead of an empty array
when there is no error). (Jani)
– Fixed bug #50174 (Incorrectly matched docComment). (Felipe)
– Fixed bug #50168 (FastCGI fails with wrong error on HEAD request to
non-existant file). (Dmitry)
– Fixed bug #50162 (Memory leak when fetching timestamp column from Oracle
database). (Felipe)
– Fixed bug #50159 (wrong working directory in symlinked files). (Dmitry)
– Fixed bug #50158 (FILTER_VALIDATE_EMAIL fails with valid addresses
containing = or ?). (Pierrick)
– Fixed bug #50152 (ReflectionClass::hasProperty behaves like isset() not
property_exists). (Felipe)
– Fixed bug #50146 (property_exists: Closure object cannot have properties).
– Fixed bug #50145 (crash while running bug35634.phpt). (Felipe)
– Fixed bug #50140 (With default compilation option, php symbols are unresolved
for nsapi). (Uwe Schindler)
– Fixed bug #50087 (NSAPI performance improvements). (Uwe Schindler)
– Fixed bug #50073 (parse_url() incorrect when ? in fragment). (Ilia)
– Fixed bug #50023 (pdo_mysql doesn’t use PHP_MYSQL_UNIX_SOCK_ADDR). (Ilia)
– Fixed bug #50005 (Throwing through Reflection modified Exception object
makes segmentation fault). (Felipe)
– Fixed bug #49990 (SNMP3 warning message about security level printed twice).
– Fixed bug #49985 (pdo_pgsql prepare() re-use previous aborted
transaction). (ben dot pineau at gmail dot com, Ilia, Matteo)
– Fixed bug #49938 (Phar::isBuffering() returns inverted value). (Greg)
– Fixed bug #49936 (crash with ftp stream in php_stream_context_get_option()).
– Fixed bug #49921 (Curl post upload functions changed). (Ilia)
– Fixed bug #49866 (Making reference on string offsets crashes PHP). (Dmitry)
– Fixed bug #49855 (import_request_variables() always returns NULL). (Ilia,
sjoerd at php dot net)
– Fixed bug #49851, #50451 (http wrapper breaks on 1024 char long headers).
– Fixed bug #49800 (SimpleXML allow (un)serialize() calls without warning).
(Ilia, wmeler at wp-sa dot pl)
– Fixed bug #49719 (ReflectionClass::hasProperty returns true for a private
property in base class). (Felipe)
– Fixed bug #49677 (ini parser crashes with apache2 and using ${something}
ini variables). (Jani)
– Fixed bug #49660 (libxml 2.7.3+ limits text nodes to 10MB). (Felipe)
– Fixed bug #49647 (DOMUserData does not exist). (Rob)
– Fixed bug #49600 (imageTTFText text shifted right). (Takeshi Abe)
– Fixed bug #49585 (date_format buffer not long enough for >4 digit years).
(Derick, Adam)
– Fixed bug #49560 (oci8: using LOBs causes slow PHP shutdown). (Oracle Corp.)
– Fixed bug #49521 (PDO fetchObject sets values before calling constructor).
– Fixed bug #49472 (Constants defined in Interfaces can be overridden).
– Fixed bug #49463 (setAttributeNS fails setting default namespace). (Rob)
– Fixed bug #49244 (Floating point NaN cause garbage characters). (Sjoerd)
– Fixed bug #49224 (Compile error due to old DNS functions on AIX systems).
– Fixed bug #49174 (crash when extending PDOStatement and trying to set
queryString property). (Felipe)
– Fixed bug #48811 (Directives in PATH section do not get applied to
subdirectories). (Patch by: ct at swin dot edu dot au)
– Fixed bug #48590 (SoapClient does not honor max_redirects). (Sriram)
– Fixed bug #48190 (Content-type parameter “boundary” is not case-insensitive
in HTTP uploads). (Ilia)
– Fixed bug #47848 (importNode doesn’t preserve attribute namespaces). (Rob)
– Fixed bug #47409 (extract() problem with array containing word “this”).
(Ilia, chrisstocktonaz at gmail dot com)
– Fixed bug #47281 ($php_errormsg is limited in size of characters)
(Oracle Corp.)
– Fixed bug #46478 (htmlentities() uses obsolete mapping table for character
entity references). (Moriyoshi)
– Fixed bug #45599 (strip_tags() truncates rest of string with invalid
attribute). (Ilia, hradtke)
– Fixed bug #45120 (PDOStatement->execute() returns true then false for same
statement). (Pierrick)
– Fixed bug #44827 (define() allows :: in constant names). (Ilia)
– Fixed bug #44098 (imap_utf8() returns only capital letters).
(steffen at dislabs dot de, Pierre)
– Fixed bug #34852 (Failure in odbc_exec() using oracle-supplied odbc
driver). (tim dot tassonis at trivadis dot com)

分类: php学习 标签: , ,

22 Jul 2010, PHP 5.3.3 update news

2013年6月11日 没有评论

22 Jul 2010, PHP 5.3.3
– Upgraded bundled sqlite to version (Ilia)
– Upgraded bundled PCRE to version 8.02. (Ilia)

– Added support for JSON_NUMERIC_CHECK option in json_encode() that converts
numeric strings to integers. (Ilia)
– Added stream_set_read_buffer, allows to set the buffer for read operation.
– Added stream filter support to mcrypt extension (ported from
mcrypt_filter). (Stas)
– Added full_special_chars filter to ext/filter. (Rasmus)
– Added backlog socket context option for stream_socket_server(). (Mike)
– Added fifth parameter to openssl_encrypt()/openssl_decrypt()
(string $iv) to use non-NULL IV.
Made implicit use of NULL IV a warning. (Sara)
– Added openssl_cipher_iv_length(). (Sara)
– Added FastCGI Process Manager (FPM) SAPI. (Tony)
– Added recent Windows versions to php_uname and fix undefined windows
version support. (Pierre)
– Added Berkeley DB 5 support to the DBA extension. (Johannes, Chris Jones)
– Added support for copy to/from array/file for pdo_pgsql extension.
(Denis Gasparin, Ilia)
– Added inTransaction() method to PDO, with specialized support for Postgres.
(Ilia, Denis Gasparin)

– Changed namespaced classes so that the ctor can only be named
__construct now. (Stas)
– Reset error state in PDO::beginTransaction() reset error state. (Ilia)

– Implemented FR#51295 (SQLite3::busyTimeout not existing). (Mark)
– Implemented FR#35638 (Adding udate to imap_fetch_overview results).
(Charles_Duffy at dell dot com )
– Rewrote var_export() to use smart_str rather than output buffering, prevents
data disclosure if a fatal error occurs (CVE-2010-2531). (Scott)
– Fixed possible buffer overflows in mysqlnd_list_fields, mysqlnd_change_user.
– Fixed possible buffer overflows when handling error packets in mysqlnd.
Reported by Stefan Esser. (Andrey)
– Fixed very rare memory leak in mysqlnd, when binding thousands of columns.
– Fixed a crash when calling an inexistent method of a class that inherits
PDOStatement if instantiated directly instead of doing by the PDO methods.

– Fixed memory leak on error in mcrypt_create_iv on Windows. (Pierre)
– Fixed a possible crash because of recursive GC invocation. (Dmitry)
– Fixed a possible resource destruction issues in shm_put_var().
Reported by Stefan Esser. (Dmitry)
– Fixed a possible information leak because of interruption of XOR operator.
Reported by Stefan Esser. (Dmitry)
– Fixed a possible memory corruption because of unexpected call-time pass by
refernce and following memory clobbering through callbacks.
Reported by Stefan Esser. (Dmitry)
– Fixed a possible memory corruption in ArrayObject::uasort(). Reported by
Stefan Esser. (Dmitry)
– Fixed a possible memory corruption in parse_str(). Reported by Stefan Esser.
– Fixed a possible memory corruption in pack(). Reported by Stefan Esser.
– Fixed a possible memory corruption in substr_replace(). Reported by Stefan
Esser. (Dmitry)
– Fixed a possible memory corruption in addcslashes(). Reported by Stefan
Esser. (Dmitry)
– Fixed a possible stack exhaustion inside fnmatch(). Reported by Stefan
Esser. (Ilia)
– Fixed a possible dechunking filter buffer overflow. Reported by Stefan Esser.
– Fixed a possible arbitrary memory access inside sqlite extension. Reported
by Mateusz Kocielski. (Ilia)
– Fixed string format validation inside phar extension. Reported by Stefan
Esser. (Ilia)
– Fixed handling of session variable serialization on certain prefix
characters. Reported by Stefan Esser. (Ilia)
– Fixed a NULL pointer dereference when processing invalid XML-RPC
requests (Fixes CVE-2010-0397, bug #51288). (Raphael Geissert)
– Fixed 64-bit integer overflow in mhash_keygen_s2k(). (Clément LECIGNE, Stas)
– Fixed SplObjectStorage unserialization problems (CVE-2010-2225). (Stas)
– Fixed the mail.log ini setting when no filename was given. (Johannes)

– Fixed bug #52317 (Segmentation fault when using mail() on a rhel 4.x (only 64
bit)). (Adam)
– Fixed bug #52262 (json_decode() shows no errors on invalid UTF-8).
– Fixed bug #52240 (hash_copy() does not copy the HMAC key, causes wrong
results and PHP crashes). (Felipe)
– Fixed bug #52238 (Crash when an Exception occured in iterator_to_array).
– Fixed bug #52193 (converting closure to array yields empty array). (Felipe)
– Fixed bug #52183 (Reflectionfunction reports invalid number of arguments for
function aliases). (Felipe)
– Fixed bug #52162 (custom request header variables with numbers are removed).
(Sriram Natarajan)
– Fixed bug #52160 (Invalid E_STRICT redefined constructor error). (Felipe)
– Fixed bug #52138 (Constants are parsed into the ini file for section names).
– Fixed bug #52115 (mysqli_result::fetch_all returns null, not an empty array).
– Fixed bug #52101 (dns_get_record() garbage in ‘ipv6’ field on Windows).
– Fixed bug #52082 (character_set_client & character_set_connection reset after
mysqli_change_user()). (Andrey)
– Fixed bug #52043 (GD doesn’t recognize latest libJPEG versions).
(php at group dot apple dot com, Pierre)
– Fixed bug #52041 (Memory leak when writing on uninitialized variable returned
from function). (Dmitry)
– Fixed bug #52060 (Memory leak when passing a closure to method_exists()).
– Fixed bug #52057 (ReflectionClass fails on Closure class). (Felipe)
– Fixed bug #52051 (handling of case sensitivity of old-style constructors
changed in 5.3+). (Felipe)
– Fixed bug #52037 (Concurrent builds fail in install-programs). (seanius at
debian dot org, Kalle)
– Fixed bug #52019 (make lcov doesn’t support TESTS variable anymore). (Patrick)
– Fixed bug #52010 (open_basedir restrictions mismatch on vacuum command).
– Fixed bug #52001 (Memory allocation problems after using variable variables).
– Fixed bug #51991 (spl_autoload and *nix support with namespace). (Felipe)
– Fixed bug #51943 (AIX: Several files are out of ANSI spec). (Kalle,
coreystup at gmail dot com)
– Fixed bug #51911 (ReflectionParameter::getDefaultValue() memory leaks with
constant array). (Felipe)
– Fixed bug #51905 (ReflectionParameter fails if default value is an array
with an access to self::). (Felipe)
– Fixed bug #51899 (Parse error in parse_ini_file() function when empy value
followed by no newline). (Felipe)
– Fixed bug #51844 (checkdnsrr does not support types other than MX). (Pierre)
– Fixed bug #51827 (Bad warning when register_shutdown_function called with
wrong num of parameters). (Felipe)
– Fixed bug #51822 (Segfault with strange __destruct() for static class
variables). (Dmitry)
– Fixed bug #51791 (constant() aborts execution when fail to check undefined
constant). (Felipe)
– Fixed bug #51732 (Fileinfo __construct or open does not work with NULL).
– Fixed bug #51725 (xmlrpc_get_type() returns true on invalid dates). (Mike)
– Fixed bug #51723 (Content-length header is limited to 32bit integer with
Apache2 on Windows). (Pierre)
– Fixed bug #51721 (mark DOMNodeList and DOMNamedNodeMap as Traversable).
(David Zuelke)
– Fixed bug #51712 (Test mysql_mysqlnd_read_timeout_long must fail on MySQL4).
– Fixed bug #51697 (Unsafe operations in free_storage of SPL iterators,
causes crash during shutdown). (Etienne)
– Fixed bug #51690 (Phar::setStub looks for case-sensitive
__HALT_COMPILER()). (Ilia)
– Fixed bug #51688 (ini per dir crashes when invalid document root are given).
– Fixed bug #51671 (imagefill does not work correctly for small images).
– Fixed bug #51670 (getColumnMeta causes segfault when re-executing query
after calling nextRowset). (Pierrick)
– Fixed bug #51647 Certificate file without private key (pk in another file)
doesn’t work. (Andrey)
– Fixed bug #51629 (CURLOPT_FOLLOWLOCATION error message is misleading).
– Fixed bug #51627 (script path not correctly evaluated).
(russell dot tempero at rightnow dot com)
– Fixed bug #51624 (Crash when calling mysqli_options()). (Felipe)
– Fixed bug #51615 (PHP crash with wrong HTML in SimpleXML). (Felipe)
– Fixed bug #51609 (pg_copy_to: Invalid results when using fourth parameter).
– Fixed bug #51608 (pg_copy_to: WARNING: nonstandard use of \\ in a string
literal). (cbandy at jbandy dot com)
– Fixed bug #51607 (pg_copy_from does not allow schema in the tablename
argument). (cbandy at jbandy dot com)
– Fixed bug #51605 (Mysqli – zombie links). (Andrey)
– Fixed bug #51604 (newline in end of header is shown in start of message).
(Daniel Egeberg)
– Fixed bug #51590 (JSON_ERROR_UTF8 is undefined). (Felipe)
– Fixed bug #51583 (Bus error due to wrong alignment in mysqlnd). (Rainer Jung)
– Fixed bug #51582 (Don’t assume UINT64_C it’s ever available).
(reidrac at usebox dot net, Pierre)
– Fixed bug #51577 (Uninitialized memory reference with oci_bind_array_by_name)
(Oracle Corp.)
– Fixed bug #51562 (query timeout in mssql can not be changed per query).
(ejsmont dot artur at gmail dot com)
– Fixed bug #51552 (debug_backtrace() causes segmentation fault and/or memory
issues). (Dmitry)
– Fixed bug #51445 (var_dump() invalid/slow *RECURSION* detection). (Felipe)
– Fixed bug #51435 (Missing ifdefs / logic bug in crypt code cause compile
errors). (Felipe)
– Fixed bug #51424 (crypt() function hangs after 3rd call). (Pierre, Sriram)
– Fixed bug #51394 (Error line reported incorrectly if error handler throws an
exception). (Stas)
– Fixed bug #51393 (DateTime::createFromFormat() fails if format string contains
timezone). (Adam)
– Fixed bug #51347 (mysqli_close / connection memory leak). (Andrey, Johannes)
– Fixed bug #51338 (URL-Rewriter is still enabled if use_only_cookies is
on). (Ilia, j dot jeising at gmail dot com)
– Fixed bug #51291 (oci_error doesn’t report last error when called two times)
(Oracle Corp.)
– Fixed bug #51276 (php_load_extension() is missing when HAVE_LIBDL is
undefined). (Tony)
– Fixed bug #51273 (Faultstring property does not exist when the faultstring is
empty) (Ilia, dennis at transip dot nl)
– Fixed bug #51269 (zlib.output_compression Overwrites Vary Header). (Adam)
– Fixed bug #51257 (CURL_VERSION_LARGEFILE incorrectly used after libcurl
version 7.10.1). (aron dot ujvari at microsec dot hu)
– Fixed bug #51242 (Empty mysql.default_port does not default to 3306 anymore,
but 0). (Adam)
– Fixed bug #51237 (milter SAPI crash on startup). (igmar at palsenberg dot com)
– Fixed bug #51213 (pdo_mssql is trimming value of the money column). (Ilia,
alexr at oplot dot com)
– Fixed bug #51190 (ftp_put() returns false when transfer was successful).
– Fixed bug #51183 (ext/date/php_date.c fails to compile with Sun Studio).
(Sriram Natarajan)
– Fixed bug #51176 (Static calling in non-static method behaves like $this->).
– Fixed bug #51171 (curl_setopt() doesn’t output any errors or warnings when
an invalid option is provided). (Ilia)
– Fixed bug #51128 (imagefill() doesn’t work with large images). (Pierre)
– Fixed bug #51096 (‘last day’ and ‘first day’ are handled incorrectly when
parsing date strings). (Derick)
– Fixed bug #51086 (DBA DB4 doesn’t work with Berkeley DB 4.8). (Chris Jones)
– Fixed bug #51062 (DBA DB4 uses mismatched headers and libraries). (Chris
– Fixed bug #51026 (mysqli_ssl_set not working). (Andrey)
– Fixed bug #51023 (filter doesn’t detect int overflows with GCC 4.4).
(Raphael Geissert)
– Fixed bug #50999 (unaligned memory access in dba_fetch()). (Felipe)
– Fixed bug #50976 (Soap headers Authorization not allowed).
(Brain France, Dmitry)
– Fixed bug #50828 (DOMNotation is not subclass of DOMNode). (Rob)
– Fixed bug #50810 (property_exists does not work for private). (Felipe)
– Fixed bug #50762 (in WSDL mode Soap Header handler function only being called
if defined in WSDL). (mephius at gmail dot com)
– Fixed bug #50731 (Inconsistent namespaces sent to functions registered with
spl_autoload_register). (Felipe)
– Fixed bug #50563 (removing E_WARNING from parse_url). (ralph at smashlabs dot
com, Pierre)
– Fixed bug #50578 (incorrect shebang in phar.phar). (Fedora at FamilleCollet
dot com)
– Fixed bug #50392 (date_create_from_format enforces 6 digits for ‘u’ format
character). (Derick)
– Fixed bug #50383 (Exceptions thrown in __call / __callStatic do not include
file and line in trace). (Felipe)
– Fixed bug #50358 (Compile failure compiling ext/phar/util.lo). (Felipe)
– Fixed bug #50101 (name clash between global and local variable).
(patch by yoarvi at gmail dot com)
– Fixed bug #50055 (DateTime::sub() allows ‘relative’ time modifications).
– Fixed bug #51002 (fix possible memory corruption with very long names).
– Fixed bug #49893 (Crash while creating an instance of Zend_Mail_Storage_Pop3).
– Fixed bug #49819 (STDOUT losing data with posix_isatty()). (Mike)
– Fixed bug #49778 (DateInterval::format(“%a”) is always zero when an interval
is created from an ISO string). (Derick)
– Fixed bug #49700 (memory leaks in php_date.c if garbage collector is
enabled). (Dmitry)
– Fixed bug #49576 (FILTER_VALIDATE_EMAIL filter needs updating) (Rasmus)
– Fixed bug #49490 (XPath namespace prefix conflict). (Rob)
– Fixed bug #49429 (odbc_autocommit doesn’t work). (Felipe)
– Fixed bug #49320 (PDO returns null when SQLite connection fails). (Felipe)
– Fixed bug #49234 (mysqli_ssl_set not found). (Andrey)
– Fixed bug #49216 (Reflection doesn’t seem to work properly on MySqli).
– Fixed bug #49192 (PHP crashes when GC invoked on COM object). (Stas)
– Fixed bug #49081 (DateTime::diff() mistake if start in January and interval >
28 days). (Derick)
– Fixed bug #49059 (DateTime::diff() repeats previous sub() operation).
(yoarvi@gmail.com, Derick)
– Fixed bug #48983 (DomDocument : saveHTMLFile wrong charset). (Rob)
– Fixed bug #48930 (__COMPILER_HALT_OFFSET__ incorrect in PHP >= 5.3). (Felipe)
– Fixed bug #48902 (Timezone database fallback map is outdated). (Derick)
– Fixed bug #48781 (Cyclical garbage collector memory leak). (Dmitry)
– Fixed bug #48601 (xpath() returns FALSE for legitimate query). (Rob)
– Fixed bug #48361 (SplFileInfo::getPathInfo should return the
parent dir). (Etienne)
– Fixed bug #48289 (iconv_mime_encode() quoted-printable scheme is broken).
(Adam, patch from hiroaki dot kawai at gmail dot com).
– Fixed bug #47842 (sscanf() does not support 64-bit values). (Mike)
– Fixed bug #46111 (Some timezone identifiers can not be parsed). (Derick)
– Fixed bug #45808 (stream_socket_enable_crypto() blocks and eats CPU).
(vincent at optilian dot com)
– Fixed bug #43233 (sasl support for ldap on Windows). (Pierre)
– Fixed bug #35673 (formatOutput does not work with saveHTML). (Rob)
– Fixed bug #33210 (getimagesize() fails to detect width/height on certain
JPEGs). (Ilia)

分类: php学习 标签: , ,