Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Motivation: I refactored code to use
BcMath\Number
instead offloat
, and I didn't notice a printf usage with%f
, which lead to incorrect result. PHPStan didn't complain, becauseBcMath\Number
has__toString()
.Here is an executed version of the test file: https://3v4l.org/3pXMc
I left some things for possible future PRs to keep things simple:
int
for%d
,int|float
for%f
,__stringandstringable
for%s
. This may be too strict for default PHPStan, but IMO it would be a good candidate for phpstan-strict-rules.vprintf
/vsprintf
.