fork(1) download
  1. <?php
  2.  
  3. class Cesta {
  4. private $itens;
  5. public function __construct(array $itens) {
  6. $this->itens = $itens;
  7. }
  8. public function show() {
  9. echo "Minha cesta:\n";
  10. foreach ($this->itens as $item) {
  11. echo $item."\n";
  12. }
  13. }
  14. }
  15.  
  16. class CestaBuilder {
  17. private $itens = array();
  18. static public function create() {
  19. return new static;
  20. }
  21. public function adicionar($item) {
  22. $this->itens[] = $item;
  23. return $this;
  24. }
  25. public function build() {
  26. return new Cesta($this->itens);
  27. }
  28. }
  29.  
  30. $minha_cesta = CestaBuilder::create()
  31. ->adicionar("Pão")
  32. ->adicionar("Queijo")
  33. ->adicionar("Mortadela")
  34. ->build();
  35. $minha_cesta->show();
  36.  
Success #stdin #stdout 0.03s 52480KB
stdin
Standard input is empty
stdout
Minha cesta:
Pão
Queijo
Mortadela