0
私はsingleton pattern
を作ろうとしていますが、どこか間違えているようです。たびにクラスCart
からインスタンスを作成しようとすると、新しいインスタンスが作成されます。 setId()
とgetId()
の機能でテストしました。毎回異なる番号を返します。PHPシンプルシングルトンは動作しません
class Cart
{
private $cartQuantity = 0;
private static $instance;
private $id;
private function __construct(){}
public function addQuantity($quantity){
$this->cartQuantity += $quantity;
}
public function getQuantity(){
return $this->cartQuantity;
}
public function setId(){
$this->id = rand(0, 10);
}
public function getId(){
return $this->id;
}
public static function startCount(){
if(self::$instance === null){
self::$instance = new Cart();
self::$instance->setId();
}
return self::$instance;
}
}
$inst = Cart::startCount();
echo $inst->getId();
私は間違っていますか?私にコードの正当なブロックのように見える:/事前にありがとう!
「私は間違っていますか? https://3v4l.org/V9Y9b コードは正常に同じIDを返します。 – svgrafov
はい、私のためにも同様に – musashii
Hm。 OK!どうもありがとうございました!問題はどこか別のものだと思います。それを探し続ける:) –