Chaînage de méthodes vs interface Fluent en PHP
Le concept de chaînage de méthodes dans la programmation orientée objet vous permet d'exécuter une séquence de mutateur méthodes sur un seul objet, où chaque méthode renvoie le même objet (ou un autre objet pertinent). Cela permet une structure de code plus concise et lisible.
Implémentation du chaînage de méthodes en PHP
Pour implémenter le chaînage de méthodes en PHP, vous créez essentiellement une série de méthodes de mutation qui tous renvoient l'objet actuel (ou un substitut approprié).
Considérez ce qui suit exemple :
class fakeString { private $str; function __construct() { $this->str = ""; } function addA() { $this->str .= "a"; return $this; } function addB() { $this->str .= "b"; return $this; } function getStr() { return $this->str; } } $a = new fakeString(); echo $a->addA()->addB()->getStr();
Dans cet exemple, la classe fakeString inclut les méthodes de mutation addA() et addB(), qui modifient la chaîne stockée dans l'objet et renvoient l'objet modifié. La méthode getStr() récupère la chaîne finale.
En chaînant ces méthodes, vous pouvez obtenir une syntaxe compacte et expressive, comme le montre la dernière ligne où nous exécutons une séquence d'appels de méthode : $a-> addA()->addB()->getStr(). Ce code concatène les caractères "a" et "b" à la chaîne et génère "ab".
Informations supplémentaires
Le chaînage de méthodes est souvent utilisé en conjonction avec un interface fluide, qui garantit que les types de retour de méthode sont cohérents et appropriés à la séquence de chaînage. Bien que PHP n'impose pas la cohérence des types de retour, il est recommandé de la respecter pour des raisons de clarté et de maintenabilité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!