Skip to content

Commit

Permalink
PHP 8.1: fix deprecation notice [2]
Browse files Browse the repository at this point in the history
The `Fixer::generateDiff()` method calls the `shell_exec()` method to retrieve the `diff` between two files.

In the unit tests, this is used to compare the expected content in a `.fixed` file with the generate fixed file contents.
If the expected content matches the generated content, the diff command will produce no output and `shell_exec()` will return `null`.
Ref: https://www.php.net/manual/en/function.shell-exec.php

This result is subsequently passed to `explode()` as the second parameter, but `explode()` only excepts strings as the second parameter.
Ref: https://www.php.net/manual/en/function.explode

As of PHP 8.1, this will generate a deprecation notice `explode(): Passing null to parameter squizlabs#2 ($string) of type string is deprecated`.

Discovered while testing an external standard against PHPCS `master` on PHP 8.1.

Fixed now.
  • Loading branch information
jrfnl committed Mar 5, 2021
1 parent a4272b6 commit 377a467
Showing 1 changed file with 4 additions and 0 deletions.
4 changes: 4 additions & 0 deletions src/Fixer.php
Expand Up @@ -255,6 +255,10 @@ public function generateDiff($filePath=null, $colors=true)
unlink($tempName);
}

if ($diff === null) {
return '';
}

if ($colors === false) {
return $diff;
}
Expand Down

0 comments on commit 377a467

Please sign in to comment.