PHP 7 removes the error level E_STRICT . Information on this can be found in the PHP7 compatibility notes . You can also read the application document where it was discussed when PHP 7 was being developed.
A simple fact: E_STRICT notifications were introduced several versions ago, in an attempt to notify developers that they are using bad practice, but initially without any changes. However, recent versions and PHP 7 in particular, have become more stringent with respect to these things.
The error you are experiencing is a classic case:
You have defined a method in your class that overrides a method with the same name in the parent class, but your override method has a different argument signature.
Most modern programming languages would not actually allow this. PHP used to let developers get away with such things, but the language is becoming more strict with each version, especially now with PHP 7 - they came with a new major version number specifically so that they could justify the significant changes that break backward compatibility.
The problem is that you have already ignored the warning messages. Your question implies that this is the solution you want to continue, but messages like "strict" and "outdated" should be considered as a clear warning that your code is likely to break in future versions. By ignoring them over the past few years, you have actually put yourself in the situation you are currently in. (I know that not what you want to hear, and actually does not help now, but it is important to clarify clearly)
Actually, the job you are looking for does not exist. The PHP language is evolving, and if you want to stick with PHP 7, your code must also evolve. If you really cannot fix the code, you will either have to suppress all warnings or live with these warnings cluttering your logs.
Another thing you need to know if you plan to stick with PHP 7 is that there are a number of other compatibility breaks with this version, including some that are pretty subtle. If your code is in a state in which it has errors similar to the one you are reporting, this means that it is probably quite a long time, and probably has other problems that will cause problems in PHP 7. For such code , I would suggest conducting a more thorough audit of the code before making PHP 7. If you are not ready to do this or are not ready to fix the errors found (and it is understood that your question is that you are not), then I would suggest that PHP 7 is probably too much for you.
You have the opportunity to return to PHP 5.6. I know that you said that you do not want to do this, but in the short term it will make your life easier. Honestly, I think this might be your best option.