PHP NEWS
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
-?? ??? 201?, PHP 5.3.99
-- Upgraded bundled Sqlite3 to version 3.7.4. (Ilia)
-- Upgraded bundled PCRE to version 8.10. (Ilia)
-
-- Removed legacy features:
- . break/continue $var syntax. (Dmitry)
- . Safe mode and all related ini options. (Kalle)
- . register_globals and register_long_arrays ini options. (Kalle)
- . import_request_variables(). (Kalle)
- . allow_call_time_pass_reference. (Pierrick)
- . define_syslog_variables ini option and its associated function. (Kalle)
- . highlight.bg ini option. (Kalle)
- . Session bug compatibility mode (session.bug_compat42 and
- session.bug_compat_warn ini options). (Kalle)
- . session_is_registered(), session_register() and session_unregister()
- functions. (Kalle)
- . y2k_compliance ini option. (Kalle)
-
-- Moved extensions to PECL: (Johannes)
- . ext/sqlite. (Note: the ext/sqlite3 and ext/pdo_sqlite extensions are
- not affected)
-
-- Changed $_SERVER['REQUEST_TIME'] to include microsecond precision. (Ilia)
-- Changed default value of "default_charset" php.ini option from ISO-8859-1 to
- UTF-8. (Rasmus)
-- Changed array_combine() to return empty array instead of FALSE when both
- parameter arrays are empty. FR #34857. (joel.perras@gmail.com)
-- Changed third parameter of preg_match_all() to optional. FR #53238. (Adam)
-- Changed silent casting of null/''/false into an Object when adding
- a property into a warning. (Scott)
+?? ??? 201?, PHP 5.5.0
- General improvements:
- . Added multibyte support by default. Previously php had to be compiled
- with --enable-zend-multibyte. Now it can be enabled or disabled through
- zend.multibyte directive in php.ini (Dmitry)
- . Removed compile time dependency from ext/mbstring (Dmitry)
- . Added scalar typehints to the parser and the reflection API. (Ilia, Derick)
- . Added support for Traits. (Stefan)
- . Added closure $this support back. (Stas)
- . Added array dereferencing support. (Felipe)
- . Added support for object references in recursive serialize() calls.
- FR #36424. (Mike)
- . Added http_response_code() function. FR #52555. (Paul Dragoonis, Kalle)
- . Added header_register_callback() which is invoked immediately
- prior to the sending of headers and after default headers have
- been added. (Scott)
- . Added DTrace support. (David Soria Parra)
- . Improved output layer, see README.NEW-OUTPUT-API for internals. (Mike)
- . Improved unserialize() performance.
- (galaxy dot mipt at gmail dot com, Kalle)
- . Improved unix build system to allow building multiple PHP binary SAPIs and
- one SAPI module the same time. FR #53271, FR #52410. (Jani)
- . Added optional argument to debug_backtrace() and debug_print_backtrace()
- to limit the amount of stack frames returned. (Sebastian, Patrick)
-
-- Improved Zend Engine memory usage: (Dmitry)
- . Replaced zend_function.pass_rest_by_reference by
- ZEND_ACC_PASS_REST_BY_REFERENCE in zend_function.fn_flags.
- . Replaced zend_function.return_reference by ZEND_ACC_RETURN_REFERENCE
- in zend_function.fn_flags.
- . Removed zend_arg_info.required_num_args as it was only needed for internal
- functions. Now the first arg_info for internal functions (which has special
- meaning) is represented by zend_internal_function_info structure.
- . Moved zend_op_array.size, size_var, size_literal, current_brk_cont,
- backpatch_count into CG(context) as they are used only during compilation.
- . Moved zend_op_array.start_op into EG(start_op) as it's used only for
- 'interactive' execution of single top-level op-array.
- . Replaced zend_op_array.done_pass_two by ZEND_ACC_DONE_PASS_TWO in
- zend_op_array.fn_flags.
- . op_array.vars array is trimmed (reallocated) during pass_two.
- . Replaced zend_class_entry.constants_updated by ZEND_ACC_CONSTANTS_UPDATED
- in zend_class_entry.ce_flags.
- . Reduced the size of zend_class_entry by sharing the same memory space
- by different information for internal and user classes.
- See zend_class_entry.info union.
- . Reduced size of temp_variable.
-
-- Changed the structure of op_array.opcodes. The constant values are moved from
- opcode operands into a separate literal table. (Dmitry)
-
-- Improved Zend Engine, performance tweaks and optimizations: (Dmitry)
- . Inlined most probable code-paths for arithmetic operations directly into
- executor
- . Eliminated unnecessary iterations during request startup/shutdown.
- . Changed $GLOBALS into a JIT autoglobal, so it's initialized only if used.
- (this may affect opcode caches!)
- . Improved performance of @ (silence) operator.
- . Simplified string offset reading. $str[1][0] is now a legal construct.
- . Added caches to eliminate repeatable run-time bindings of functions,
- classes, constants, methods and properties.
- . Added concept of interned strings. All strings constants known at compile
- time are allocated in a single copy and never changed.
- . Added an optimization which saves memory and emalloc/efree calls for empty
- HashTables. (Stas, Dmitry)
- . ZEND_RECV now always has IS_CV as its result.
- . ZEND_CATCH now has to be used only with constant class names.
- . ZEND_FETCH_DIM_? may fetch array and dimension operands in different order.
- . Simplified ZEND_FETCH_*_R operations. They can't be used with the
- EXT_TYPE_UNUSED flag any more. This is a very rare and useless case.
- ZEND_FREE might be required after them instead.
- . Split ZEND_RETURN into two new instructions ZEND_RETURN and
- ZEND_RETURN_BY_REF.
- . Optimized access to global constants using values with pre-calculated
- hash_values from the literals table.
- . Optimized access to static properties using executor specialization.
- A constant class name may be used as a direct operand of ZEND_FETCH_*
- instruction without previous ZEND_FETCH_CLASS.
- . zend_stack and zend_ptr_stack allocation is delayed until actual usage.
-
-- Improved CLI SAPI: (Johannes)
- . Added command line option --rz <name> which shows information of the
- named Zend extension.
- . Interactive readline shell improvements:
- . Added "cli.pager" php.ini setting to set a pager for output.
- . Added "cli.prompt" php.ini setting to configure the shell prompt.
- . Added shortcut #inisetting=value to change ini settings at run-time.
- . Changed shell not to terminate on fatal errors.
- . Interactive shell works with shared readline extension. FR #53878.
-
-- Improved FastCGI SAPI: (Dmitry)
- . Added apache compatible functions: apache_child_terminate(),
- getallheaders(), apache_request_headers() and apache_response_headers()
- . Improved performance of FastCGI request parsing.
-
-- Improved core functions:
- . number_format() no longer truncates multibyte decimal points and thousand
- separators to the first byte. FR #53457. (Adam)
-
-- Improved CURL extension:
- . Added support for CURLOPT_MAX_RECV_SPEED_LARGE and
- CURLOPT_MAX_SEND_SPEED_LARGE. FR #51815. (Pierrick)
-
-- Improved Date extension:
- . Added the + modifier to parseFromFormat to allow trailing text in the
- string to parse without throwing an error. (Stas, Derick)
-
-- Improved DBA extension:
- . Added Tokyo Cabinet abstract DB support. (Michael Maclean)
- . Added Berkeley DB 5 support. (Johannes, Chris Jones)
-
-- Improved DOM extension:
- . Added the ability to pass options to loadHTML (Chregu, fxmulder at gmail dot com)
-
-- Improved filesystem functions:
- . scandir() now accepts SCANDIR_SORT_NONE as a possible sorting_order value.
- FR #53407. (Adam)
-
-- Improved HASH extension:
- . Added Jenkins's one-at-a-time hash support. (Martin Jansen)
- . Added FNV-1 hash support. (Michael Maclean)
- . Made Adler32 algorithm faster. FR #53213. (zavasek at yandex dot ru)
-
-- Improved intl extension:
- . Added Spoofchecker, allows checking for visibly confusable characters and
- other security issues. (Scott)
-
-- Improved JSON extension:
- . Added JsonSerializable interface. (Sara)
- . Added JSON_BIGINT_AS_STRING, extended json_decode() sig with $options.
- (Sara)
- . Added support for JSON_NUMERIC_CHECK option in json_encode() that converts
- numeric strings to integers. (Ilia)
- . Added new json_encode() option JSON_PRETTY_PRINT. FR #44331. (Adam)
- . Added new json_encode() option JSON_UNESCAPED_SLASHES. FR #49366. (Adam)
-
-- Improved LDAP extension:
- . Added paged results support. FR #42060. (ando@OpenLDAP.org,
- iarenuno@eteo.mondragon.edu, jeanseb@au-fil-du.net, remy.saissy@gmail.com)
-
-- Improved mbstring extension:
- . Added Shift_JIS/UTF-8 Emoji (pictograms) support. (Rui)
- . Added JIS X0213:2004 (Shift_JIS-2004, EUC-JP-2004, ISO-2022-JP-2004) support. (Rui)
- . Ill-formed UTF-8 check for security enhancements. (Rui)
- . Added MacJapanese (Shift_JIS) and gb18030 encoding support. (Rui)
- . Added encode/decode in hex format to mb_[en|de]code_numericentity(). (Rui)
- . Added user JIS X0213:2004 (Shift_JIS-2004, EUC-JP-2004, ISO-2022-JP-2004) support. (Rui)
- . Added the user user defined area for CP936 and CP950 (Rui).
-
-- Improved MySQL extensions:
- . MySQL: Deprecated mysql_list_dbs(). FR #50667. (Andrey)
- . mysqlnd: Added named pipes support. FR #48082. (Andrey)
- . MySQLi: Added iterator support in MySQLi. mysqli_result implements
- Traversable. (Andrey, Johannes)
- . PDO_mysql: Removed support for linking with MySQL client libraries older
- than 4.1. (Johannes)
-
-- Improved OpenSSL extension:
- . Added AES support. FR #48632. (yonas dot y at gmail dot com, Pierre)
- . Added a "no_ticket" SSL context option to disable the SessionTicket TLS
- extension. FR #53447. (Adam)
-
-- Improved PDO DB-LIB: (Stanley)
- . Added nextRowset support.
- . Fixed bug #50755 (PDO DBLIB Fails with OOM).
-
-- Improved PostgreSQL extension:
- . Added support for "extra" parameter for PGNotify().
- (r dot i dot k at free dot fr, Ilia)
-
-- Improved Reflection extension: (Johannes)
- . Added ReflectionExtension::isTemporary() and
- ReflectionExtension::isPersistent() methods.
- . Added ReflectionZendExtension class.
- . Added ReflectionClass::isCloneable(). (Felipe)
-
-- Improved Session extension:
- . Added support for storing upload progress feedback in session data. (Arnaud)
- . Changed session.entropy_file to default to /dev/urandom or /dev/arandom if
- either is present at compile time. (Rasmus)
-
-- Improved SPL extension:
- . Added RegexIterator::getRegex() method. (Joshua Thijssen)
- . Added SplObjectStorage::getHash() hook. (Etienne)
- . Added CallbackFilterIterator and RecursiveCallbackFilterIterator (Arnaud)
- . Added missing class_uses(..) as pointed out by #55266 (Stefan)
-
-- Improved XSL extension:
- . Added XsltProcessor::setSecurityPrefs($options) and getSecurityPrefs() to
- define forbidden operations within XSLT stylesheets, default is not to
- enable write operations from XSLT. Bug #54446 (Chregu, Nicolas Gregoire)
-
-- Improved ZLIB extension:
- . Re-implemented non-file related functionality. (Mike)
-
-- Improved SNMP extension (Boris Lytochkin):
- . Added OO API. FR #53594 (php-snmp rewrite).
- . Sanitized return values of existing functions. Now it returns FALSE on
- failure.
- . Allow ~infinite OIDs in GET/GETNEXT/SET queries. Autochunk them to max_oids
- upon request.
- . Introducing unit tests for extension with ~full coverage.
- . IPv6 support. (FR #42918)
- . Way of representing OID value can now be changed when SNMP_VALUE_OBJECT
- is used for value output mode. Use or'ed SNMP_VALUE_LIBRARY(default if
- not specified) or SNMP_VALUE_PLAIN. (FR #54502)
- . Fixed bugs
- . #44193 (snmp v3 noAuthNoPriv doesn't work)
- . #45893 (Snmp buffer limited to 2048 char)
- . #46065 (snmp_set_quick_print() persists between requests)
- . #51336 (snmprealwalk (snmp v1) does not handle end of OID tree correctly)
- . #53862 (snmp_set_oid_output_format does not allow returning to default)
-
-## UNSORTED ##
-
-- Fixed PDO objects binary incompatibility. (Dmitry)
-- Fixed bug #52211 (iconv() returns part of string on error). (Felipe)
-- Fixed bug #55450 (Built in web server not accepting file uploads). (Laruence)
-- Fixed bug #55471 (ZTS build broken with dtrace). (Laruence)
-- Fixed bug #55463 (cli-server missing _SERVER[REMOTE_ADDR]). (Laruence)
-- Fixed bug #55473 (mysql_pconnect leaks file descriptors on reconnect). (Andrey, Laruence)
-- Fixed bug #55423 (cli-server could not output correctly in some case). (Laruence, chobieee at gmail dot com)
+ . World domination
<<< NOTE: Insert NEWS from last stable release here prior to actual release! >>>