关于var_dump输出的#号

关于var_dump输出的#号

php中使用var_dump打印一个对象的时候,其输出包括对象名,对象包含的成员变量(成员变量个数),以及一个“#序号”。像这样:

屏幕快照 2016-06-25 下午9.01.01

object(B)表示这个对象是一个类名为B的实例;(2)表示这个对象内部有2个成员变量,分别是’name’与’age’;但#2代表什么呢?

其实我个人感觉(我并没有找到确切的说明文档,这估计得去看看php内核了),php中新建一个对象(不包括int、string、array这些基本类型的实例)的时候,会将该对象放在某个内核数组中。而var_dump出来的这个#序号,就表示该对象在这个php内核数组中序号。不过这序号并不能代表该对象是第几个被创建的,举个例子:

上面代码打印出来的结果:

屏幕快照 2016-06-25 下午9.48.16

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注