rfc:normalize_inc_dec

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
rfc:normalize_inc_dec [2014/01/28 01:40] datibbawrfc:normalize_inc_dec [2018/06/18 10:17] (current) – This RFC appears to be inactive cmb
Line 1: Line 1:
  
 ====== PHP RFC: Normalize increment and decrement operators ====== ====== PHP RFC: Normalize increment and decrement operators ======
-  * Version: 0.1+  * Version: 0.2
   * Date: 2013-12-19   * Date: 2013-12-19
-  * Author: Tjerk Meesters (datibbaw@php.net+  * Author: Tjerk Meesters (datibbaw) 
-  * Status: Draft+  * Status: Inactive
   * First Published at: https://wiki.php.net/rfc/normalize_inc_dec   * First Published at: https://wiki.php.net/rfc/normalize_inc_dec
  
Line 31: Line 31:
 ===== Proposal ===== ===== Proposal =====
  
-The following behaviour is proposed:+The proposal is: 
 +  - always treat boolean and null types as an integer, but raise a warning. 
 +  - deprecate alphanumeric increment and introduce ''str_inc()'' and ''str_dec()''
 + 
 +==== Operation on bool / null ====
  
 <code php> <code php>
 // booleans // booleans
-$a = false; ++$a; // bool(true+$a = false;  
-$a = true; --$a; // bool(false)+++$a; // int(1) + warning 
 +++$a; // int(2
 +$a = true;  
 +--$a; // int(0) + warning 
 +--$a; // int(-1)
  
 // null values // null values
-$a = null; --$a; // null +$a = null; --$a; // int(-1) + warning 
-$a = null; ++$a; // null+$a = null; ++$a; // int(1) + warning 
 +</code>
  
-// empty strings +==== Operation on alphanumeric strings ====
-$a ''; ++$a; // int(1)+
  
 +<code php>
 // non-numeric strings // non-numeric strings
 $a = '12d9';  $a = '12d9'; 
Line 58: Line 67:
 ===== Backward Incompatible Changes ===== ===== Backward Incompatible Changes =====
  
-Null no longer increments to 1. Booleans couldn't be incremented in the first place, so there should be no breaks.+Incrementing ''null'' will now raise a warning; incrementing alphanumeric strings will raise a deprecation notice.
  
 ===== Proposed PHP Version(s) ===== ===== Proposed PHP Version(s) =====
  
-**Next 5.x** +**PHP 7**
- +
-Introduce a notice for the current string increment use case. This will help developers spot their usage more easily. +
- +
-**Next major** +
- +
-Removal of string increment using ++ and --.+
  
 ===== Open Issues ===== ===== Open Issues =====
rfc/normalize_inc_dec.1390873218.txt.gz · Last modified: 2017/09/22 13:28 (external edit)