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'