Mam interfejs:PHP - Interfejs dziedziczenia - deklaracja musi być zgodny
interface AbstractMapper
{
public function objectToArray(ActiveRecordBase $object);
}
i klas:
class ActiveRecordBase
{
...
}
class Product extends ActiveRecordBase
{
...
}
========
ale mogę” t wykonaj następujące czynności:
interface ExactMapper implements AbstractMapper
{
public function objectToArray(Product $object);
}
lub inna:
interface ExactMapper extends AbstractMapper
{
public function objectToArray(Product $object);
}
mam błąd „deklaracja musi być zgodna”
Więc, czy jest jakiś sposób, aby to zrobić w PHP?
Znam ten został opublikowany kilka lat temu, ale teraz oto moje dwa centa wiadomość Ten błąd nie zrobić, to z dziedziczeniem interfejsu. Ten błąd wynika z tego, że PHP nie obsługuje przeciążania prawdziwych funkcji/metod, tak jak w innych językach (np. Java, C++), do których prawdopodobnie przywykłeś. – anotheruser1488182