psalm
https://github.com/vimeo/psalm
PHP
A static analysis tool for finding errors in PHP applications
Triage Issues!
When you volunteer to triage issues, you'll receive an email each day with a link to an open issue that needs help in this project. You'll also receive instructions on how to triage issues.
Triage Docs!
Receive a documented method or class from your favorite GitHub repos in your inbox every day. If you're really pro, receive undocumented methods or classes and supercharge your commit history.
PHP not yet supported17 Subscribers
Add a CodeTriage badge to psalm
Help out
- Issues
- Conditional return type selects its first branch for an unresolved inline argument
- Narrow a loop index compared to the count of a known-size array
- Fix iterable union containment and conditional type inference
- fix(array_merge): put the elements after an array of unknown length into its rest
- fix(loops): a variable the loop condition always assigns is defined after the loop #7072
- fix(docblocks): an override documenting only some params inherits the others' types from the parent #13161
- fix(array-key-exists): report a non-numeric string key checked on a list or int-keyed array
- fix(class-exists): the class of a negated class_exists() is only phantom after the first statement of the block
- Evaluate the keys of ArrayAccess items and of items passed to asort() and similar functions once
- Update an array item after `array_pop()` or `array_shift()` on it
- Docs
- PHP not yet supported