- Output for git.master
- string(315) "O:3:"Foo":5:{s:4:"date";O:17:"DateTimeImmutable":3:{s:4:"date";s:26:"2024-02-08 08:41:10.007219";s:13:"timezone_type";i:3;s:8:"timezone";s:16:"Europe/Amsterdam";}s:6:" * foo";s:11:"Foo bar baz";s:8:" Foo bar";i:123456789;s:3:"tbl";a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:"baz";}s:8:" * color";E:12:"Color:Yellow";}" Reducing by potentially unnecessary chars... By removing double-quote serialized output shrinks by 10.53% string(285) "O:3:Foo:5:{s:4:date;O:17:DateTimeImmutable:3:{s:4:date;s:26:2024-02-08 08:41:10.007219;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam;}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz;}s:8: * color;E:12:Color:Yellow;}" By removing previous and array leading double-colon and trailing semi-colon serialized output shrinks by 12.90% string(279) "O:3:Foo:5{s:4:date;O:17:DateTimeImmutable:3{s:4:date;s:26:2024-02-08 08:41:10.007219;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz}s:8: * color;E:12:Color:Yellow}" By removing previous and leading double-colon of sized types serialized output shrinks by 19.77% string(263) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.007219;s13:timezone_type;i:3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i:123456789;s3:tbl;a4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s3:baz}s8: * color;E12:Color:Yellow}" By aggresive removing previous and some double-colons serialized output shrinks by 24.02% string(254) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.007219;s13:timezone_type;i3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i123456789;s3:tbl;a4{i0;i123;i1;b1;i2;d1.1;i3;s3:baz}s8: * color;E12:Color:Yellow}"
- Output for git.master_jit
- string(315) "O:3:"Foo":5:{s:4:"date";O:17:"DateTimeImmutable":3:{s:4:"date";s:26:"2024-02-08 08:41:10.007261";s:13:"timezone_type";i:3;s:8:"timezone";s:16:"Europe/Amsterdam";}s:6:" * foo";s:11:"Foo bar baz";s:8:" Foo bar";i:123456789;s:3:"tbl";a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:"baz";}s:8:" * color";E:12:"Color:Yellow";}" Reducing by potentially unnecessary chars... By removing double-quote serialized output shrinks by 10.53% string(285) "O:3:Foo:5:{s:4:date;O:17:DateTimeImmutable:3:{s:4:date;s:26:2024-02-08 08:41:10.007261;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam;}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz;}s:8: * color;E:12:Color:Yellow;}" By removing previous and array leading double-colon and trailing semi-colon serialized output shrinks by 12.90% string(279) "O:3:Foo:5{s:4:date;O:17:DateTimeImmutable:3{s:4:date;s:26:2024-02-08 08:41:10.007261;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz}s:8: * color;E:12:Color:Yellow}" By removing previous and leading double-colon of sized types serialized output shrinks by 19.77% string(263) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.007261;s13:timezone_type;i:3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i:123456789;s3:tbl;a4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s3:baz}s8: * color;E12:Color:Yellow}" By aggresive removing previous and some double-colons serialized output shrinks by 24.02% string(254) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.007261;s13:timezone_type;i3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i123456789;s3:tbl;a4{i0;i123;i1;b1;i2;d1.1;i3;s3:baz}s8: * color;E12:Color:Yellow}"
- Output for rfc.property-hooks
- string(315) "O:3:"Foo":5:{s:4:"date";O:17:"DateTimeImmutable":3:{s:4:"date";s:26:"2024-02-08 08:41:10.006622";s:13:"timezone_type";i:3;s:8:"timezone";s:16:"Europe/Amsterdam";}s:6:" * foo";s:11:"Foo bar baz";s:8:" Foo bar";i:123456789;s:3:"tbl";a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:"baz";}s:8:" * color";E:12:"Color:Yellow";}" Reducing by potentially unnecessary chars... By removing double-quote serialized output shrinks by 10.53% string(285) "O:3:Foo:5:{s:4:date;O:17:DateTimeImmutable:3:{s:4:date;s:26:2024-02-08 08:41:10.006622;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam;}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4:{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz;}s:8: * color;E:12:Color:Yellow;}" By removing previous and array leading double-colon and trailing semi-colon serialized output shrinks by 12.90% string(279) "O:3:Foo:5{s:4:date;O:17:DateTimeImmutable:3{s:4:date;s:26:2024-02-08 08:41:10.006622;s:13:timezone_type;i:3;s:8:timezone;s:16:Europe/Amsterdam}s:6: * foo;s:11:Foo bar baz;s:8: Foo bar;i:123456789;s:3:tbl;a:4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s:3:baz}s:8: * color;E:12:Color:Yellow}" By removing previous and leading double-colon of sized types serialized output shrinks by 19.77% string(263) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.006622;s13:timezone_type;i:3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i:123456789;s3:tbl;a4{i:0;i:123;i:1;b:1;i:2;d:1.1;i:3;s3:baz}s8: * color;E12:Color:Yellow}" By aggresive removing previous and some double-colons serialized output shrinks by 24.02% string(254) "O3:Foo:5{s4:date;O17:DateTimeImmutable:3{s4:date;s26:2024-02-08 08:41:10.006622;s13:timezone_type;i3;s8:timezone;s16:Europe/Amsterdam}s6: * foo;s11:Foo bar baz;s8: Foo bar;i123456789;s3:tbl;a4{i0;i123;i1;b1;i2;d1.1;i3;s3:baz}s8: * color;E12:Color:Yellow}"
This tab shows result from various feature-branches currently under review by the php developers. Contact me to have additional branches featured.
Active branches
Archived branches
Once feature-branches are merged or declined, they are no longer available. Their functionality (when merged) can be viewed from the main output page
- 2020-03-21 RFC: Is_Literal - declined
- 2020-12-04 Enumerations - included in PHP 8.1
- 2018-06-15 Typed Properties v2 - implemented in PHP 7.4
- 2016-08-12 Object typehint - included in PHP 7.2
- 2016-08-14 Arrow functions - withdrawn
- 2016-05-29 array_change_keys() - withdrawn
- 2016-04-19 Lexical scope support for anonymous classes - suspended
- 2016-04-17 Functional Interfaces - declined
- 2016-03-16 Typed Properties - superseded in favor of Typed Properties 2.0
- 2015-08-27 Callable Prototypes - declined
- 2015-05-01 Short Closures - declined / withdrawn in favor of Arrow Functions
- 2015-02-18 Scalar type hints v5 - included in PHP 7
- 2015-02-14 Union Types - declined
- 2013-09-22 Anonymous classes - included in PHP 7