本文实例讲述了PHP实现一个限制实例化次数的类。分享给大家供大家参考,具体如下:
实现思路
- 定义一个static变量$count,用于保存实例化对象的个数
- 定义一个static方法create,通过该方法判断$count的值,进而判断是否进一步实例化对象。
- 定义构造函数,$count+1
- 定义析构函数,$count-1
实现代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
<?php
class demo{
public $name ;
public static $count =0;
private function __construct( $name ){
echo "create $name <br/>" ;
$this ->name = $name ;
self:: $count ++;
}
public function __destruct(){
echo "destory " . $this ->name. "<br/>" ;
self:: $count --;
}
public static function create( $name ){
if (self:: $count >2){
die ( "you can only create at most 2 objects." );
} else {
return new self( $name );
}
}
}
$one = demo::create( "one" );
$two = demo::create( "two" );
$two = null;
$three = demo::create( "three" );
|
运行结果:
create one
create two
destory two
create three
destory three
destory one
希望本文所述对大家PHP程序设计有所帮助。
原文链接:https://blog.csdn.net/koastal/article/details/50730030