PHP/IniSet: add support for PHP 8.0+ named parameters + bug fix #2161
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.
PHP/IniSet: add support for PHP 8.0+ named parameters
PassedParameters::getParameterFromStack()
method.PHP itself renamed a lot of parameters in PHP 8.0. As named parameters did not exist before PHP 8.0, the parameter name as per PHP 8.0 (or above) is the only relevant name.
Ref: https://www.php.net/manual/en/function.ini-set.php
Includes additional unit tests.
PHP/IniSet: prevent some false positives
The
'raw'
key in the parameter arrays returned from thePassedParameters
class contains - as per the name - the raw contents of the parameter.Since PHPCSUtils 1.0.0-alpha4, the return array also contain a
'clean'
index, which contains the contents of the parameter cleaned of comments.By switching to using that key, some false positives/incorrect error message being thrown situations get prevented.
Includes unit tests demonstrating the issue and safeguarding the fix.
Includes ensuring that the information displayed in the error message will also no longer contain comments.
PHP/IniSet: minor code simplification
Check using
empty()
instead! isset()
for efficiency as it will prevent a potentially unnecessary call toin_array()
.PHP/IniSet: minor message tweak for clarity