Zum Inhalt springen

PHP Basics: Interfaces

Interfaces definieren, welche Methoden eine Klasse, die das interface implementiert, implementieren muss. Die Methoden selbst, werden aber nicht impelementiert.

<?php
//Unser Interface myTemplates
interface myTemplate
{
    //Eine Klasse, die myTemplate implementiert, muss definieren:
    public function setVariable($name, $var);
    public function getOutput();
}

class Template implements myTemplate
{
    private $vars = array();
    
    public function setVariable($name, $var)
    {
        $this->vars[$name] = $var;
    }
  
    public function getOutput()
    {
        foreach($this->vars as $name => $value) {
            $template = '<'.$name.'>'.$value.'</'.$name.'>';
        }
 
        return $template;
    }
}

  • Eine Klasse kann mehrere interfaces implementieren
  • Interfaces können von anderen Interfaces mittels extends erben
  • Im Interface sind definitionsgemäß alle Methoden public
  • Wenn eine Klasse mehrere Interfaces implementiert, darf es zwischen den Methoden keine Namenskollisionen geben, außer die Methoden haben die selbe Signatur

Kommentare sind geschlossen, aber Trackbacks und Pingbacks sind möglich.