rfc:remove_deprecated_functionality_in_php7

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Last revisionBoth sides next revision
rfc:remove_deprecated_functionality_in_php7 [2015/01/02 15:51] – start voting nikicrfc:remove_deprecated_functionality_in_php7 [2016/07/09 12:56] – this RFC has already been implemented cmb
Line 2: Line 2:
   * Date: 2014-09-11   * Date: 2014-09-11
   * Author: Nikita Popov <nikic@php.net>   * Author: Nikita Popov <nikic@php.net>
-  * Status: In Voting+  * Status: Implemented (PHP 7.0)
   * Targeting: PHP 7   * Targeting: PHP 7
   * Discussion: http://markmail.org/message/vcladdh5sciqjpvg   * Discussion: http://markmail.org/message/vcladdh5sciqjpvg
Line 12: Line 12:
 The following extensions are deprecated: The following extensions are deprecated:
  
-  * ext/ereg (since PHP 5.3; use ext/pcre instead) +  * ext/ereg (since PHP 5.3; use ext/pcre instead) [[https://github.com/php/php-src/commit/fea9a6fc7702c53df5e9f4c16857dc921d8b5997|REMOVED]] ([[http://pecl.php.net/package/ereg|PECL extension]]
-  * ext/mysql (since PHP 5.5; use ext/mysqli or ext/pdo_mysql instead) [TODO]+  * ext/mysql (since PHP 5.5; use ext/mysqli or ext/pdo_mysql instead) [[https://github.com/php/php-src/commit/fd1578c196575c7e120a84ee030bb87c14a199b0|REMOVED]] ([[http://pecl.php.net/package/mysql|PECL extension]])
  
 The following language features are deprecated: The following language features are deprecated:
  
-  * Assignment of ''new'' by reference (since PHP 5.3; use normal assignment instead) +  * Assignment of ''new'' by reference (since PHP 5.3; use normal assignment instead) [[https://github.com/php/php-src/commit/4d3e4d3bf994739681613f9061d056e10f731b65|REMOVED]] 
-  * Scoped calls of non-static methods from incompatible ''$this'' context (since PHP 5.6)+  * Scoped calls of non-static methods from incompatible ''$this'' context (since PHP 5.6) [[https://github.com/php/php-src/commit/085774997b591c2babbb623fe7102ce2c77bc9fb|REMOVED]]
  
 The following functions are deprecated: The following functions are deprecated:
  
-  * ''dl'' on fpm-fcgi (since PHP 5.3) +  * ''dl'' on fpm-fcgi (since PHP 5.3) [[https://github.com/php/php-src/commit/e05993dfa20e934ba99ccd5b2b944a7759126f58|REMOVED]] 
-  * ''set_magic_quotes_runtime'' and ''magic_quotes_runtime'' (since PHP 5.4) +  * ''set_magic_quotes_runtime'' and ''magic_quotes_runtime'' (since PHP 5.4) [[https://github.com/php/php-src/commit/a60efc5e11b65083ef4cc8a132df620e1642dd76|REMOVED]] 
-  * ''set_socket_blocking'' (since PHP 5.4; use ''stream_set_blocking'' instead) +  * ''set_socket_blocking'' (since PHP 5.4; use ''stream_set_blocking'' instead) [[https://github.com/php/php-src/commit/ca11bc0325496bef94d4417f300e323040fb11db|REMOVED]] 
-  * ''mcrypt_generic_end'' (since PHP 5.4; use ''mcrypt_generic_deinit'' instead) +  * ''mcrypt_generic_end'' (since PHP 5.4; use ''mcrypt_generic_deinit'' instead) [[https://github.com/php/php-src/commit/c488a4570197240af8e05eaab95c0b308c2246d8|REMOVED]] 
-  * ''mcrypt_ecb'', ''mcrypt_cbc'', ''mcrypt_cfb'' and ''mcrypt_ofb'' (since PHP 5.5, but documented as deprecated earlier; use ''mcrypt_encrypt'' and ''mcrypt_decrypt'' instead) +  * ''mcrypt_ecb'', ''mcrypt_cbc'', ''mcrypt_cfb'' and ''mcrypt_ofb'' (since PHP 5.5, but documented as deprecated earlier; use ''mcrypt_encrypt'' and ''mcrypt_decrypt'' instead) [[https://github.com/php/php-src/commit/7810659cc372b17d48a7f0a799cc1509471916a1|REMOVED]] 
-  * ''datefmt_set_timezone_id'' and ''IntlDateFormatter::setTimeZoneID'' (since PHP 5.5; use ''datefmt_set_timezone'' or ''IntlDateFormatter::setTimeZone'' instead) [TODO]+  * ''datefmt_set_timezone_id'' and ''IntlDateFormatter::setTimeZoneID'' (since PHP 5.5; use ''datefmt_set_timezone'' or ''IntlDateFormatter::setTimeZone'' instead) [[https://github.com/php/php-src/commit/cf0ffa8e4c0bb92bfae60963a6e4c0dea00bd003|REMOVED]]
  
 The following ini options are deprecated: The following ini options are deprecated:
  
-  * ''xsl.security_prefs'' (since PHP 5.4; use ''XsltProcessor::setSecurityPrefs'' instead)+  * ''xsl.security_prefs'' (since PHP 5.4; use ''XsltProcessor::setSecurityPrefs'' instead) [[https://github.com/php/php-src/commit/a81e65a5018a04379914c605f7a9c69ac8941600|REMOVED]]
   * ''iconv.input_encoding'', ''iconv.output_encoding'', ''iconv.internal_encoding'', ''mbstring.http_input'', ''mbstring.http_output'' and ''mbstring.internal_encoding'' (since PHP 5.6; use ''php.input_encoding'', ''php.internal_encoding'' and ''php.output_encoding'' instead) [TODO]   * ''iconv.input_encoding'', ''iconv.output_encoding'', ''iconv.internal_encoding'', ''mbstring.http_input'', ''mbstring.http_output'' and ''mbstring.internal_encoding'' (since PHP 5.6; use ''php.input_encoding'', ''php.internal_encoding'' and ''php.output_encoding'' instead) [TODO]
  
 The following miscellaneous functionality is deprecated: The following miscellaneous functionality is deprecated:
  
-  * The ''$is_dst'' parameter of the ''mktime()'' and ''gmmktime()'' functions (since PHP 5.1) +  * The ''$is_dst'' parameter of the ''mktime()'' and ''gmmktime()'' functions (since PHP 5.1) [[https://github.com/php/php-src/commit/9c5eaac18b65038cc377c7335b32889b892cf1fc|REMOVED]] 
-  * ''#'' style comments in ini files (since PHP 5.3; use '';'' style comments instead) +  * ''#'' style comments in ini files (since PHP 5.3; use '';'' style comments instead) [[https://github.com/php/php-src/commit/83391b5518619cce7d2a1baf5a4434b1690a33d1|REMOVED]] 
-  * String category names in ''setlocale()'' (since PHP 5.3; use ''LC_*'' constants instead) +  * String category names in ''setlocale()'' (since PHP 5.3; use ''LC_*'' constants instead) [[https://github.com/php/php-src/commit/4c115b6b71e31a289d84f72f8664943497b9ee31|REMOVED]] 
-  * Unsafe curl file uploads (since PHP 5.5; use ''CurlFile'' instead) +  * Unsafe curl file uploads (since PHP 5.5; use ''CurlFile'' instead) [[https://github.com/php/php-src/commit/b5184ef33606c808b66c4b2738c80376c95de65b|REMOVED]] 
-  * ''preg_replace()'' eval modifier (since PHP 5.5; use ''preg_replace_callback'' instead) +  * ''preg_replace()'' eval modifier (since PHP 5.5; use ''preg_replace_callback'' instead) [[https://github.com/php/php-src/commit/cb9c99ebd075d1d4fae0cbf5df54ca14c4071584|REMOVED]] 
-  * ''PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT'' driver option (since PHP 5.6; use ''PDO::ATTR_EMULATE_PREPARES'' instead) [TODO+  * ''PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT'' driver option (since PHP 5.6; use ''PDO::ATTR_EMULATE_PREPARES'' instead) [[https://github.com/php/php-src/commit/4694e1c02039114915704f0206f1ffb7a0efe4ad|REMOVED]
-  * ''CN_match'' and ''SNI_server_name'' stream context option (since PHP 5.6; use ''peer_name'' instead) [TODO]+  * ''CN_match'' and ''SNI_server_name'' stream context option (since PHP 5.6; use ''peer_name'' instead) [[https://github.com/php/php-src/commit/2a87a42cd431ea8008ce24db6e57948052ff805d|REMOVED]]
  
 ===== Patches and Tests ===== ===== Patches and Tests =====
Line 53: Line 53:
 ===== Votes ===== ===== Votes =====
  
-Voting started on 2015-01-02 and ends on 2015-01-16. All votes refer to PHP 7.+Voting started on 2015-01-02 and ended on 2015-01-16. All votes refer to PHP 7
 + 
 +All removals have been accepted.
  
 ==== ext/ereg ==== ==== ext/ereg ====
Line 63: Line 65:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Unbundle the ext/ereg extension?" auth="nikic" voteType="single" closed="false">+<doodle title="Unbundle the ext/ereg extension?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 76: Line 78:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Unbundle the ext/mysql extension?" auth="nikic" voteType="single" closed="false">+<doodle title="Unbundle the ext/mysql extension?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 96: Line 98:
 Vote: Requires 2/3 majority. Vote: Requires 2/3 majority.
  
-<doodle title="Remove assignment of new by reference?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove assignment of new by reference?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 109: Line 111:
 Vote: Requires 2/3 majority. Vote: Requires 2/3 majority.
  
-<doodle title="Remove support for calls from incompatible context?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove support for calls from incompatible context?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 122: Line 124:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove dl() in fpm-fcgi SAPI?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove dl() in fpm-fcgi SAPI?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 133: Line 135:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove (set_)magic_quotes_runtime() functions?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove (set_)magic_quotes_runtime() functions?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 152: Line 154:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove listed deprecated functions?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove listed deprecated functions?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 163: Line 165:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove xsl.security_prefs ini directive?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove xsl.security_prefs ini directive?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 174: Line 176:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove extension specific encoding ini directives?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove extension specific encoding ini directives?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 184: Line 186:
  
 Vote: Requires simple majority. Vote: Requires simple majority.
 +
 +<doodle title="Remove $is_dst parameter of the mktime() and gmmktime() functions?" auth="nikic" voteType="single" closed="true">
 +   * Yes
 +   * No
 +</doodle>
  
 ==== #-style comments in ini files ==== ==== #-style comments in ini files ====
Line 191: Line 198:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove support for #-style comments in ini files?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove support for #-style comments in ini files?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 209: Line 216:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Disallow string category names in setlocale()?" auth="nikic" voteType="single" closed="false">+<doodle title="Disallow string category names in setlocale()?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 222: Line 229:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Disallow enabling unsafe curl uploads?" auth="nikic" voteType="single" closed="false">+<doodle title="Disallow enabling unsafe curl uploads?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 233: Line 240:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove preg_replace() eval modifier?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove preg_replace() eval modifier?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 244: Line 251:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT driver option?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove PDO::PGSQL_ATTR_DISABLE_NATIVE_PREPARED_STATEMENT driver option?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
Line 255: Line 262:
 Vote: Requires simple majority. Vote: Requires simple majority.
  
-<doodle title="Remove CN_match and SNI_server_name stream context options?" auth="nikic" voteType="single" closed="false">+<doodle title="Remove CN_match and SNI_server_name stream context options?" auth="nikic" voteType="single" closed="true">
    * Yes    * Yes
    * No    * No
 </doodle> </doodle>
rfc/remove_deprecated_functionality_in_php7.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1