setBuilder($builder); echo 'Preparing full featured Big Mac...'; $director->regularBigMac(); dump($builder->getBigMac()->getIngredients()); echo 'Preparing vegan Big Mac...'; $director->veganBigMac(); dump($builder->getBigMac()->getIngredients()); // The Builder pattern can be used without a Director class. echo 'Preparing a custom snack...'; $builder->produceBun(); $builder->produceMeat(); $builder->produceSauce(); dump($builder->getBigMac()->getIngredients()); } clientCode(new Director());