Menu
A guide to call-site generic variance
September 19, 2023 · 8 min read
Using RuleErrorBuilder to enrich reported errors in custom rules
July 12, 2023 · 6 min read
Solving PHPStan error "Access to an undefined property"
March 31, 2023 · 5 min read
Why Is instanceof *Type Wrong and Getting Deprecated?
February 8, 2023 · 8 min read
Preprocessing the AST for custom rules
April 15, 2022 · 12 min read
What's Up With @template-covariant?
March 14, 2022 · 4 min read
Generics By Examples
March 14, 2022 · 9 min read
Why you should always analyse the whole project
May 16, 2021 · 3 min read
How PHPStan analyses traits
May 16, 2021 · 2 min read
Bring your exceptions under control with @throws
May 12, 2021 · 7 min read
What is Bleeding Edge?
April 3, 2021 · 2 min read
Remembering and forgetting returned values
April 3, 2021 · 10 min read
Precise try-catch-finally analysis
April 3, 2021 · 3 min read
Solving PHPStan error "No value type specified in iterable type"
February 2, 2021 · 5 min read
Solving PHPStan error "Unsafe usage of new static()"
January 13, 2021 · 4 min read
Solving PHPStan error "Unable to resolve the template type"
January 13, 2021 · 2 min read
Generics in PHP using PHPDocs
December 2, 2019 · 14 min read
PHPStan’s Baseline Feature Lets You Hold New Code to a Higher Standard
October 21, 2019 · 6 min read
Testing Strategy With the Help of Static Analysis
April 2, 2018 · 1 min read
Union Types vs. Intersection Types
November 27, 2017 · 6 min read
The Three Pillars of Static Analysis in PHP
December 11, 2016 · 5 min read