Я использую фреймворк, метод которого определил что-то вроде
class Abc {
public function doThis($what) {
...
}
}
Так как я использую PHP 7 и также поклонник PHP codesniffer, он говорит мне определять типы аргументов функции, которые говорят, что янаписал класс в моем коде: -
class Pqr extends Abc {
public function doThis(string $what) {
...
}
}
Этот код дает мне предупреждение Объявление Pqr :: doThis (строка $ what) должно быть совместимо с Abc :: doThis ($ what)
Похоже, PHP обрабатывает $ what в классе Abc по-другому (не как строка).Так как Abc является частью фреймворка, и я ничего не могу с этим поделать.Я не хочу удалять типы аргументов в моем коде и хочу, чтобы cngode был более строгим.Отключение всех предупреждений было бы плохой идеей.
Что-нибудь лучше, мы должны решить эту проблему?