PHP 7 introduced type declarations and so brought PHP into the world of strict typing. Each subsequent release in the 7 series has improved this and PHP 7.4 is no different with exciting new type features. In addition, PHP 7 enabled static analysis tools that coupled with type declarations enable us to significantly remove bugs in our code before we even run it! In this talk, I will review PHP's strict type system, including the new PHP 7.4 features and show how they can make our code safer and clearer and easier to reason about. We will then turn our attention to the available static analysis tools and look at how, with strict typing, we can eliminate whole classes of bugs and make our applications better. By the end of this session, you will be well placed to write better PHP code that has fewer bugs and works as you expect every time.

Comments

Please login to leave a comment

TJ Draper at 12:19 on 7 Feb 2020

Great presentation! I wasn't sure whether this would be a rehash of things I already knew or if I'd learn some things, but I definitely learned some things. I love typing and static analysis and this is more fuel for me!

Chris Adams at 12:21 on 7 Feb 2020

Good presentation, very good examples. Soothing delivery.

Great talk with real world examples.

Bryce Embry at 13:20 on 7 Feb 2020

The presentation built well, starting with the basics and moving into useful tool analysis. Thanks for the specific, real-world examples.

Great presentation Rob! The real world code examples that code analyzers picked up on were pertinent and helpful to bring a better understanding to how code analyzers and data types can help.

Good use of code examples and presentation, the pace was a little bit slow.

Claude B. at 11:07 on 8 Feb 2020

Great talk! I loved the comparison of the tools out there based on experience on actual real projects. Brilliant!

James Lewis at 13:33 on 8 Feb 2020

Learned a lot! Great talk.

As one who works in an enterprise code base old enough to be in middle school, I really appreciated the real world code scenarios that strict typing and static analysis confront and conquer. It's a very quick way to demonstrate the value of such tooling / language features without too much theoretical values argued. The proof was right in front of our faces.