ホームページ  >  記事  >  php教程  >  PHP デザイン パターン シングルトン パターン

PHP デザイン パターン シングルトン パターン

WBOY
WBOYオリジナル
2016-06-13 12:25:471023ブラウズ

小船类boat.php

复制代码代码如下:


クラスボート {
プライベート静的 $instance=null;
プライベート $skipper;
プライベート $personNum=0;
プライベート $passengers=array();
プライベート関数 __construct() {
}
パブリック静的関数 getInstance(){
if (self::$instance==null){
self::$instance=newボート( );
}
self::$instance を返します。
}
/**
* キャプテンを設定します
*
* @paramknown_type $name
*/
public function setSkipper($name){
$this->skipper=$name;
}
/**
* 装人
*
* @paramunknown_type $person
*/
public functionload($person){
if (!emptyempty($person) and $this->personNumarray_push($this->乗客,$person);
$this->personNum=$this->personNum 1;
}
if ($this->personNum>5) {
echo 'このボートには 5 人しか乗れません!';
}
}
/**
* 誰が乗っていますか
*
* @return 不明
*/
public function whoInBoat(){
return $this->passengers;
}
}
?>


现在看看怎么样上客

复制代码代码如下:


< ?php
「boat.php」をインクルードします。
echo "从前有一条河,河里只有一条船,
";
$boat1=boat::getInstance();//因為只有一条船,所以只有一实例
echo "现在张三要到河东去,";
$boat1->load('张三');
echo "
现在船上座着:
";
foreach ($boat1->whoInboat() as $who){
echo $who.'
';
}
echo "
现在李四也要过河东去
";
$boat1->load('李四');
echo "现在船上座着:
";
foreach ($boat1->whoInboat() as $who){
echo $who.'、';
}
echo "

王五以為这条河有另一条船,
";
$boat2=boat::getInstance();
echo "他现在上船
";
$boat2->load('王五');
echo "现在船上座着:
";
foreach ($boat1->whoInboat() as $who){
echo $who.'、';
}
?>

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。