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 "ფაილში ჩაწერა: " . $message;
}
}
$logger = new FileLogger();
$logger->log("სატესტო შეტყობინება");
?>
კოდის შესრულების შედეგი:
'ფაილში ჩაწერა: სატესტო შეტყობინება'
მაგალითი
ინტერფეისს შეუძლია შეიცავდეს რამდენიმე მეთოდს და კლასმა უნდა რეალიზება მათი ყველა:
<?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 "ფართობი: " . $circle->calculateArea();
?>
კოდის შესრულების შედეგი:
'ფართობი: 78.5'