Exemple #1
0
    function getPage()
    {
        return $this->page;
    }
}
class HTMLPageDirector extends AbstractPageDirector
{
    private $builder = null;
    public function __construct(AbstractPageBuilder $builder_in)
    {
        $this->builder = $builder_in;
    }
    public function buildPage()
    {
        $this->builder->setTitle('Testing the HTMLPage');
        $this->builder->setHeading('Testing the HTMLPage');
        $this->builder->setText('Testing, testing, testing!');
        $this->builder->setText('Testing, testing, testing, or!');
        $this->builder->setText('Testing, testing, testing, more!');
        $this->builder->formatPage();
    }
    public function getPage()
    {
        return $this->builder->getPage();
    }
}
$bb = new HTMLPageBuilder();
$page = new HTMLPageDirector($bb);
$page->buildPage();
$bb->getPage();
//__________________________________________
        $this->builder = $builder_in;
    }
    public function buildPage()
    {
        $this->builder->setTitle('KB DESIGN');
        $this->builder->setHeading('HOME');
        $this->builder->setText('Welcome to KB DESIGN');
        $this->builder->formatPage();
    }
    public function getPage()
    {
        return $this->builder->getPage();
    }
}
//testBuilder.php
include_once 'BookSingleton.php';
include_once 'HTMLPage.php';
include_once 'HTMLPageBuilder.php';
include_once 'HTMLPageDirector.php';
$pageBuilder = new HTMLPageBuilder();
$pageDirector = new HTMLPageDirector($pageBuilder);
$pageDirector->buildPage();
$page = $pageDirector->GetPage();
echo $page->showPage();
/* output

HOME

Welcome to KB DESIGN
   
 */