Added compatibility mode in GD, imagerotate, image(filled)ellipse imagefilter, imageconvolution and imagecolormatch are now always enabled. (Pierre) 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, PDO::FB_ATTR_TIME_FORMAT and PDO::FB_ATTR_TIMESTAMP_FORMAT. (Lars W) 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(). (Kalle) 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. (Andrey) 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 output <br> when false and <br /> 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(). (Scott) 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 <weekday> of <n> 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). (Matteo) 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). (Matteo) 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()). (Johannes) Fixed bug #47534 (RecursiveDiteratoryIterator::getChildren ignoring CURRENT_AS_PATHNAME). (Etienne) 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 Corp.) 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). (Scott) 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). (Derick) Fixed bug #46241 (stacked error handlers, internal error handling in general). (Etienne) Fixed bug #46238 (Segmentation fault on static call with empty string method). (Felipe) Fixed bug #46192 (ArrayObject with objects as storage serialization). (Etienne) 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). (Felipe) 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). (Dmitry) 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). (Ilia) 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()). (Ilia) 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). (Scott) 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). (Hannes) 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). (Derick) 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). (Pierre) 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). (Arnaud) 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). (Matteo) 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). (Dmitry) Fixed bug #38802 (max_redirects and ignore_errors). (patch by datibbaw@php.net) Fixed bug #35980 (touch() works on files but not on directories). (Pierre)
|