示例#1
0
<?php

require_once 'imports.php';
$speedo = new Speedometer();
$speedo->setCurrentSpeed(50);
$speedo->setCurrentSpeed(100);
// Save the state of $speedo
$memento = new SpeedometerMemento($speedo);
// Change the state of $speedo
$speedo->setCurrentSpeed(80);
// Restore the state of $speedo
$speedo = $memento->restoreState();
?>
<html>
	<body>
		<p><?php 
echo 'Current speed: ' . $speedo->getCurrentSpeed();
?>
</p>
		<p><?php 
echo 'Previous speed: ' . $speedo->getPreviousSpeed();
?>
</p>
	</body>
</html>
示例#2
0
<?php

require_once 'imports.php';
// Create a monitor...
$monitor = new SpeedMonitor();
// Create a speedomter and register the monitor to it...
$speedo = new Speedometer();
$speedo->addObserver($monitor);
// Drive at different speeds...
$speedo->setCurrentSpeed(71);
?>
<html>
	<body>
		<!-- Drive at different speeds -->
		<p><?php 
echo 'Too fast? = ' . ($monitor->isSpeeding() ? 'true' : 'false');
?>
</p>
	</body>
</html>