-
Recent Posts
Recent Comments
Archives
- May 2023
- April 2023
- February 2023
- June 2022
- May 2022
- March 2022
- December 2021
- November 2021
- October 2021
- September 2021
- January 2021
- November 2020
- September 2020
- July 2020
- January 2020
- December 2019
- July 2019
- December 2018
- June 2018
- April 2018
- March 2018
- January 2018
- November 2017
- September 2017
- July 2017
- March 2017
- December 2016
- October 2016
- August 2016
- July 2016
- June 2016
- May 2016
- April 2016
- January 2016
Categories
Meta
Tag Archives: PHP
PHP 8.2 – The Release of Deprecations
The release date for PHP 8.2 has been announced, with General Availability set for the 24th November 2022; the release managers have been elected with Ben Ramsey (@ramsey) as the “veteran” supporting Pierrick Charron (@adoyy) and Sergey Panteleev (@s_panteleev) as … Continue reading
The Wonderful World of Callbacks
Anybody that has read any of my previous blog posts or looked at my code samples before should know that I’m a big fan of using callbacks. Whether it’s simply using callbacks with those standard functions that accept them as … Continue reading
ReadOnly Gotchas – A few more limitations with PHP 8.1 ReadOnly Properties
Last month I wrote about the new readonly properties in PHP 8.1, and the difficulties if you want to clone an object that uses them (together with a couple of potential solutions to that problem). The inability to clone an … Continue reading
Constant Constants. Finally! (On the inconstancy of constants)
One of the many new features of PHP 8.1 is the ability to declare class constants as final, so that they can no longer be overridden in child classes. The same applies when constants are defined as final in an … Continue reading
The Tears of a Clone
On the face of it, the new readonly properties in PHP 8.1 seem really useful for Value Objects and Data Transfer Objects: both should be immutable; setting property values should always be handled in the constructor, so no setters; and … Continue reading
Closure Binding for Unit testing of Private and Protected Methods
Some years ago, I wrote about using closure binding to access protected and private properties when unit testing an object, to verify internal state; and I created the SpyMaster library to simplify that task. One feature that I didn’t include … Continue reading