mirror of
https://github.com/php/php-src.git
synced 2024-11-23 18:04:36 +08:00
156 lines
5.5 KiB
Plaintext
156 lines
5.5 KiB
Plaintext
PHP 8.0 UPGRADE NOTES
|
|
|
|
1. Backward Incompatible Changes
|
|
2. New Features
|
|
3. Changes in SAPI modules
|
|
4. Deprecated Functionality
|
|
5. Changed Functions
|
|
6. New Functions
|
|
7. New Classes and Interfaces
|
|
8. Removed Extensions and SAPIs
|
|
9. Other Changes to Extensions
|
|
10. New Global Constants
|
|
11. Changes to INI File Handling
|
|
12. Windows Support
|
|
13. Other Changes
|
|
14. Performance Improvements
|
|
|
|
|
|
========================================
|
|
1. Backward Incompatible Changes
|
|
========================================
|
|
|
|
- Core:
|
|
. Methods with the same name as the class are no longer interpreted as
|
|
constructors. The __construct() method should be used instead.
|
|
. Removed ability to call non-static methods statically.
|
|
. Removed (unset) cast.
|
|
. Removed track_errors ini directive. This means that $php_errormsg is no
|
|
longer available. The error_get_last() function may be used instead.
|
|
. Removed the ability to define case-insensitive constants. The third
|
|
argument to define() may no longer be true.
|
|
. Removed create_function(). Anonymous functions may be used instead.
|
|
. Removed each(). foreach or ArrayIterator should be used instead.
|
|
. Removed ability to unbind $this from closures that were created from a
|
|
method, using Closure::fromCallable() or ReflectionMethod::getClosure().
|
|
|
|
- Filter:
|
|
. The FILTER_FLAG_SCHEME_REQUIRED and FILTER_FLAG_HOST_REQUIRED flags for the
|
|
FILTER_VALIDATE_URL filter have been removed. The scheme and host are (and
|
|
have been) always required.
|
|
|
|
- GD:
|
|
. The deprecated function image2wbmp() has been removed.
|
|
RFC: https://wiki.php.net/rfc/image2wbmp
|
|
. The deprecated functions png2wbmp() and jpeg2wbmp() have been removed.
|
|
RFC: https://wiki.php.net/rfc/deprecate-png-jpeg-2wbmp
|
|
|
|
- GMP:
|
|
. gmp_random() has been removed. One of gmp_random_range() or
|
|
gmp_random_bits() should be used instead.
|
|
|
|
- Intl:
|
|
. The deprecated constant INTL_IDNA_VARIANT_2003 has been removed.
|
|
RFC: https://wiki.php.net/rfc/deprecate-and-remove-intl_idna_variant_2003
|
|
|
|
- Mbstring:
|
|
. The mbstring.func_overload directive has been removed. The related
|
|
MB_OVERLOAD_MAIL, MB_OVERLOAD_STRING, and MB_OVERLOAD_REGEX constants have
|
|
also been removed. Finally, the "func_overload" and "func_overload_list"
|
|
entries in mb_get_info() have been removed.
|
|
. mb_parse_str() can no longer be used without specifying a result array.
|
|
. A number of deprecated mbregex aliases have been removed. See the following
|
|
list for which functions should be used instead:
|
|
|
|
* mbregex_encoding() -> mb_regex_encoding()
|
|
* mbereg() -> mb_ereg()
|
|
* mberegi() -> mb_eregi()
|
|
* mbereg_replace() -> mb_ereg_replace()
|
|
* mberegi_replace() -> mb_eregi_replace()
|
|
* mbsplit() -> mb_split()
|
|
* mbereg_match() -> mb_ereg_match()
|
|
* mbereg_search() -> mb_ereg_search()
|
|
* mbereg_search_pos() -> mb_ereg_search_pos()
|
|
* mbereg_search_regs() -> mb_ereg_search_regs()
|
|
* mbereg_search_init() -> mb_ereg_search_init()
|
|
* mbereg_search_getregs() -> mb_ereg_search_getregs()
|
|
* mbereg_search_getpos() -> mb_ereg_search_getpos()
|
|
* mbereg_search_setpos() -> mb_ereg_search_setpos()
|
|
|
|
. The 'e' modifier for mb_ereg_replace() has been removed.
|
|
mb_ereg_replace_callback() should be used instead.
|
|
|
|
- SPL:
|
|
. SplFileObject::fgetss() has been removed.
|
|
|
|
- Standard:
|
|
. assert() will no longer evaluate string arguments, instead they will be
|
|
treated like any other argument. assert($a == $b) should be used instead of
|
|
assert('$a == $b'). The assert.quiet_eval ini directive and
|
|
ASSERT_QUIET_EVAL constants have also been removed, as they would no longer
|
|
have any effect.
|
|
. parse_str() can no longer be used without specifying a result array.
|
|
. fgetss() has been removed.
|
|
. The string.strip_tags filter has been removed.
|
|
. The needle argument of strpos(), strrpos(), stripos(), strripos(), strstr(),
|
|
strchr(), strrchr(), and stristr() will now always be interpreted as a
|
|
string. Previously non-string needles were interpreted as an ASCII code
|
|
point. An explicit call to chr() can be used to restore the previous
|
|
behavior.
|
|
|
|
- Zlib:
|
|
. gzgetss() has been removed.
|
|
|
|
========================================
|
|
2. New Features
|
|
========================================
|
|
|
|
========================================
|
|
3. Changes in SAPI modules
|
|
========================================
|
|
|
|
========================================
|
|
4. Deprecated Functionality
|
|
========================================
|
|
|
|
========================================
|
|
5. Changed Functions
|
|
========================================
|
|
|
|
========================================
|
|
6. New Functions
|
|
========================================
|
|
|
|
========================================
|
|
7. New Classes and Interfaces
|
|
========================================
|
|
|
|
========================================
|
|
8. Removed Extensions and SAPIs
|
|
========================================
|
|
|
|
========================================
|
|
9. Other Changes to Extensions
|
|
========================================
|
|
|
|
========================================
|
|
10. New Global Constants
|
|
========================================
|
|
|
|
========================================
|
|
11. Changes to INI File Handling
|
|
========================================
|
|
|
|
========================================
|
|
12. Windows Support
|
|
========================================
|
|
|
|
========================================
|
|
13. Other Changes
|
|
========================================
|
|
|
|
========================================
|
|
14. Performance Improvements
|
|
========================================
|
|
|