АКЦЫЯ: бясплатныя месячныя курсы па стварэнні сайтаў
на выбар: вёрстка, JavaScript, PHP, Python або фрэймворкі. Сёння апошні дзень для запісу! Націскай!
341 of 410 menu

Ключавое слова interface

Ключавое слова interface выкарыстоўваецца для стварэння інтэрфейсаў - спецыяльных канструкцый, якія вызначаюць якія метады павінен рэалізаваць клас. Інтэрфейсы ўтрымліваюць толькі аб'явы метадаў без іх рэалізацыі. Клас, які рэалізуе інтэрфейс, павінен утрымліваць усе метады, аб'яўленыя ў інтэрфейсе.

Сінтаксіс

interface InterfaceName { public function method1(); public function method2($param); // ... }

Прыклад

Стварым просты інтэрфейс і клас, які яго рэалізуе:

<?php interface Logger { public function log($message); } class FileLogger implements Logger { public function log($message) { echo "Logging to file: " . $message; } } $logger = new FileLogger(); $logger->log("Test message"); ?>

Вынік выканання кода:

'Logging to file: Test message'

Прыклад

Інтэрфейс можа ўтрымліваць некалькі метадаў, і клас павінен рэалізаваць іх усе:

<?php interface Shape { public function calculateArea(); public function calculatePerimeter(); } class Circle implements Shape { private $radius; public function __construct($radius) { $this->radius = $radius; } public function calculateArea() { return 3.14 * $this->radius * $this->radius; } public function calculatePerimeter() { return 2 * 3.14 * $this->radius; } } $circle = new Circle(5); echo "Area: " . $circle->calculateArea(); ?>

Вынік выканання кода:

'Area: 78.5'

Глядзіце таксама

  • каманду class,
    для аб'явы класаў
  • каманду trait,
    для аб'явы трэйтаў
byenru