function testFactoryMethod($factoryMethodInstance)
{
    $phpUs = $factoryMethodInstance->makePHPBook("us");
    echo 'us php Author: ' . $phpUs->getAuthor() . tagins("br");
    echo 'us php Title: ' . $phpUs->getTitle() . tagins("br");
    $phpUs = $factoryMethodInstance->makePHPBook("other");
    echo 'other php Author: ' . $phpUs->getAuthor() . tagins("br");
    echo 'other php Title: ' . $phpUs->getTitle() . tagins("br");
    $phpUs = $factoryMethodInstance->makePHPBook("otherother");
    echo 'otherother php Author: ' . $phpUs->getAuthor() . tagins("br");
    echo 'otherother php Title: ' . $phpUs->getTitle() . tagins("br");
}
示例#2
0
echo $book->getAuthorAndTitle();
echo tagins("br") . tagins("br");
$starsOn = new BookStarsOnCommand($book);
callCommand($starsOn);
echo "book after stars on: ";
echo tagins("br");
echo $book->getAuthorAndTitle();
echo tagins("br") . tagins("br");
$starsOff = new BookStarsOffCommand($book);
callCommand($starsOff);
echo "book after stars off: ";
echo tagins("br");
echo $book->getAuthorAndTitle();
echo tagins("br");
echo tagins("br");
echo "END TESTING COMMAND PATTERN";
echo tagins("br");
echo tagins("/body");
echo tagins("/html");
//the callCommand function demonstrates that a specified
//  function in BookCommandee can be executed with only
//  an instance of BookCommand.
function callCommand(BookCommand $bookCommand_in)
{
    $bookCommand_in->execute();
}
//doing this so code can be displayed without breaks
function tagins($stuffing)
{
    return "<" . $stuffing . ">";
}
function testConcreteFactory($bookFactoryInstance)
{
    $phpBookOne = $bookFactoryInstance->makePHPBook();
    echo 'first php Author: ' . $phpBookOne->getAuthor() . tagins("br");
    echo 'first php Title: ' . $phpBookOne->getTitle() . tagins("br");
    $phpBookTwo = $bookFactoryInstance->makePHPBook();
    echo 'second php Author: ' . $phpBookTwo->getAuthor() . tagins("br");
    echo 'second php Title: ' . $phpBookTwo->getTitle() . tagins("br");
    $mySqlBook = $bookFactoryInstance->makeMySQLBook();
    echo 'MySQL Author: ' . $mySqlBook->getAuthor() . tagins("br");
    echo 'MySQL Title: ' . $mySqlBook->getTitle() . tagins("br");
}