abstract_widget.php
来自「Professional PHP5 code for this book」· PHP 代码 · 共 76 行
PHP
76 行
<?phpinterface Observer { public function update();}abstract class Widget implements Observer { protected $internalData = array(); abstract public function draw(); public function update(Observable $subject) { $this->internalData = $subject->getData(); }}class BasicWidget extends Widget { function __construct() { } public function draw() { $html = "<table border=1 width=130>"; $html .= "<tr><td colspan=3 bgcolor=#cccccc> <b>Instrument Info<b></td></tr>"; $numRecords = count($this->internalData[0]); for($i = 0; $i < $numRecords; $i++) { $instms = $this->internalData[0]; $prices = $this->internalData[1]; $years = $this->internalData[2]; $html .= "<tr><td>$instms[$i]</td><td> $prices[$i]</td> <td>$years[$i]</td></tr>"; } $html .= "</table><br>"; echo $html; }}class FancyWidget extends Widget { function __construct() { } public function draw() { $html = "<table border=0 cellpadding=5 width=270 bgcolor=#6699BB> <tr><td colspan=3 bgcolor=#cccccc> <b><span class=blue>Our Latest Prices<span><b> </td></tr> <tr><td><b>instrument</b></td> <td><b>price</b></td><td><b>date issued</b> </td></tr>"; $numRecords = count($this->internalData[0]); for($i = 0; $i < $numRecords; $i++) { $instms = $this->internalData[0]; $prices = $this->internalData[1]; $years = $this->internalData[2]; $html .= "<tr><td>$instms[$i]</td><td> $prices[$i]</td><td>$years[$i] </td></tr>"; } $html .= "</table><br>"; echo $html; }}?>
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?