Metodkedjor i OOP i PHP
Det är möjligt att göra så att metoder kan
anropas efter varandra i en kedja. För
att uppnå detta måste varje sådan metod
returnera $this. Låt oss
prova. Vi lägger till motsvarande
kod i våra set-metoder i klassen:
<?php
class User {
private $name;
private $surn;
public function setName($name) {
$this->name = $name;
return $this;
}
public function setSurn($surn) {
$this->surn = $surn;
return $this;
}
public function getName() {
return $this->name;
}
public function getSurn() {
return $this->surn;
}
}
?>
Nu kan våra set-metoder anropas efter varandra, i en kedja. Låt oss testa. Vi skapar ett objekt av vår klass:
<?php
$user = new User();
?>
Vi anropar våra set-metoder i kedja:
<?php
$user->setName('john')->setSurn('smit');
?>
Låt oss kontrollera att egenskapsvärdena har ändrats:
<?php
echo $user->getName();
echo $user->getSurn();
?>
Gör så att set-metoderna
i klassen Employee kan
anropas i kedja.