When define or declare function/method adding a required parameter after optional is deprecated. This happen from PHP 8.0 onward version.
Deprecated: Required parameter $required_parameters follows optional parameter $optional_parameter in XYZ on line 123
Example
function abc($optional_parameter = null, $required_parameters) {
// ^^ optional parameter , ^^ required parameter
}
Solution
function abc($optional_parameter, $required_parameters) {
// ^^ optional parameter , ^^ required parameter
}
OR
function abc(?String $optional_parameter, $required_parameters) {
// ^^ optional parameter , ^^ required parameter
}
The deprecation does not apply if there is a type declared on the optional parameter, and the default value is null