stdclass在php中是预定义的几个类之一,但各种资料手册对此语焉不详。经过研究理解如下。
stdclass可以作为基类使用,其最大特点是,(其派生类)可以自动添加成员变量,而无须在定义时说明。如
PLAIN TEXT
php:
1.
class ccs
2.
extends stdClass
3.
{
4.
var $v1;
5.
function ccs(){
6.
$this->v1=1;
7.
}
8.
};
9.
$ee= new ccs();
10.
$ee->v2=2;
上面的代码不会出错。这带来了很大的方便性,当然,也有一定的不安全因素。
另外,这个功能也解决了我长期以来的一个疑惑,就是像mysql_fetch_object这样的函数是如何实现的。
某资料上讲:stdclass是所有变量的内部基类;我理解不是这样,stdclass更像是数组类变量的内部基类。上面这种类的使用非常类似php中数组的使用方法,只不过是换一种语法形式。
stdclass可以作为基类使用,其最大特点是,(其派生类)可以自动添加成员变量,而无须在定义时说明。如
PLAIN TEXT
php:
1.
class ccs
2.
extends stdClass
3.
{
4.
var $v1;
5.
function ccs(){
6.
$this->v1=1;
7.
}
8.
};
9.
$ee= new ccs();
10.
$ee->v2=2;
上面的代码不会出错。这带来了很大的方便性,当然,也有一定的不安全因素。
另外,这个功能也解决了我长期以来的一个疑惑,就是像mysql_fetch_object这样的函数是如何实现的。
某资料上讲:stdclass是所有变量的内部基类;我理解不是这样,stdclass更像是数组类变量的内部基类。上面这种类的使用非常类似php中数组的使用方法,只不过是换一种语法形式。