Все, что вам нужно знать о чертах в PHP



Эта статья предоставит вам подробные и всесторонние знания о свойствах PHP, о том, как он реализован, и о его отличиях от наследования.

Прежде чем мы поймем черты . Мы узнали о наследовании, которое означает, что класс может расширять другой класс. Скажем, класс B расширяет класс A, а класс C также расширяет класс A, что означает, что функция, определенная в классе A, может быть доступна классу B и классу C, но предположим, что если класс B и класс C переопределили функцию X, и скажем, класс D является расширение обоих классов.

traits-in-php





Хотя множественное наследование не поддерживает это в PHP, но предположим, что это будет так. Какую функцию будет выполнять класс D? Это из класса B или из класса C? На самом деле это проблема множественного наследования, поэтому PHP не поддерживает ее, но есть много случаев, когда вы хотите расширить более одного класса для повторного использования кода.



Когда мы говорим о проблеме одиночного наследования, класс D расширяет класс C, но что, если мы хотим иметь некоторые функции класса B в классе D. Для этого мы можем использовать черты, которые представлены в PHP 5.4. Его просто и легко создать. Это похоже на класс, но только для группы методов, и, как и в абстрактных классах, вы не можете создавать экземпляры дискретных элементов.

что такое визуализация данных в таблице

Особенности в PHP

Как правило, они могут определять как статические члены, так и статические методы, что помогает разработчикам свободно повторно использовать методы в нескольких независимых классах в разных иерархиях классов. Черты избегают проблем, связанных с множественным наследованием, миксинами, а также снижают сложность.



Синтаксис:

 

Таким образом черты могут быть включены в другие классы.

class Post {use Sharable} class Comment {use Sharable}

Поскольку PHP не допускает множественного наследования, Trait используется для преодоления этого, позволяя нам повторно использовать одни и те же функции в нескольких классах. Пример ниже демонстрирует работу трейтов в PHP.

func ()?>

Вывод:

Преимущество черт

Черты уменьшают дублирование кода, предотвращая сложное наследование классов, которое может не иметь смысла в контексте вашего приложения.

Это помогает определять простые и четкие черты, а затем смешивать эти функции там, где это необходимо.

Черты против интерфейсов в PHP

Как правило, основное различие между интерфейсами и чертами в PHP заключается в том, что черты характера в основном определяют фактическую реализацию каждого метода внутри каждого класса, поэтому один и тот же интерфейс реализуется многими классами, но имеет разное поведение, а черты - это просто фрагменты введенного кода. в классе на PHP.

 

На этом мы подошли к концу этих трейтов в статье о Python. Надеюсь, вы узнали о чертах характера, преимуществах черт и различиях между чертами и интерфейсами.

Если вы нашли этот блог PHP актуальным, ознакомьтесь с от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учащихся по всему миру.

если условие в запросе sql

Есть вопрос к нам? Пожалуйста, упомяните это в разделе комментариев «Особенности PHP», и я вернусь к вам.