341 of 410 menu

Atslēgvārds interface

Atslēgvārds interface tiek izmantots, lai izveidotu interfeisus - īpašas konstrukcijas, kas nosaka, kādas metodes klasei ir jārealizē. Interfeisi satur tikai metožu deklarācijas bez to implementācijas. Klasei, kas realizē interfeisu, jāsatur visas interfeisā deklarētās metodes.

Sintakse

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

Piemērs

Izveidosim vienkāršu interfeisu un klasi, kas to realizē:

<?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"); ?>

Koda izpildes rezultāts:

'Logging to file: Test message'

Piemērs

Interfeiss var saturēt vairākas metodes, un klasēm tās visas ir jārealizē:

<?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(); ?>

Koda izpildes rezultāts:

'Area: 78.5'

Skatiet arī

  • komandu class,
    klases deklarēšanai
  • komandu trait,
    treitu deklarēšanai
Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt