341 of 410 menu

Nøkkelordet interface

Nøkkelordet interface brukes til å opprette grensesnitt - spesielle konstruksjoner som definerer hvilke metoder en klasse må implementere. Grensesnitt inneholder kun metodeerklæringer uten deres implementering. En klasse som implementerer et grensesnitt, må inneholde alle metoder som er erklært i grensesnittet.

Syntaks

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

Eksempel

La oss opprette et enkelt grensesnitt og en klasse som implementerer det:

<?php interface Logger { public function log($message); } class FileLogger implements Logger { public function log($message) { echo "Logger til fil: " . $message; } } $logger = new FileLogger(); $logger->log("Testmelding"); ?>

Resultat av kjøring av kode:

'Logger til fil: Testmelding'

Eksempel

Et grensesnitt kan inneholde flere metoder, og klassen må implementere alle:

<?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 "Areal: " . $circle->calculateArea(); ?>

Resultat av kjøring av kode:

'Areal: 78.5'

Se også

  • kommandoen class,
    for å erklære klasser
  • kommandoen trait,
    for å erklære trekk
Norsk
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi bruker informasjonskapsler for nettstedets funksjonalitet, analyse og personalisering. Behandling av data foregår i henhold til Personvernerklæringen.
godta alle tilpass avvis