2010-04-19 3 views
0

Каковы последствия реализации одного и того же интерфейса через два разных маршрута в PHP, есть ли какие-либо?Последствия в PHP реализации интерфейса через два разных маршрута?

Что я имею в виду, что-то вроде этого:

interface baseInterface {} 

abstract class baseClass implements baseInterface { } 

interface myInterface extends baseInterface {} 

class myClass extends baseClass implements myInterface {} 

В этом случае myClass реализует baseInterface из двух разных родителей - myInterface и baseClass. Есть ли последствия для этого? Мой инстинкт заключается в том, что PHP должен справиться с этим, но я просто хочу убедиться. Что именно делает PHP в этом случае? Он просто проверяет, чтобы необходимые функции были реализованы для интерфейса каждый раз, когда он обнаруживает его и называют его днем ​​или он делает что-то еще?

+0

Вы пробовали использовать простой пример, или вы немного обеспокоены тем, что PHP может привести к сбою вашего сервера/компьютера? – Finbarr

+0

@Finbarr Более того, я предпочитаю, чтобы этот материал был документирован, и это часть того, что StackOverflow для;) –

+0

@Finbarr Плюс, если есть какие-то странные последствия при этом - не неслыханно - просто запустить тестовый прогон, чтобы увидеть, он «будет компилироваться», как бы не обязательно будет раскрывать это. –

ответ

2

Это все будет работать нормально. Вам все равно придется держать их прямо в голове и документации, хотя :)

Другими словами, технических проблем нет.

+0

Успение верное. –