PHP5中新增stdClass

PHP5中新增stdClass

官方手册参考:http://www.php.net/manual/en/language.oop5.basic.php#92123

stdClass类是PHP的一个内部保留类,初始时没有成员变量也没成员方法,所有的魔术方法都被设置为NULL,可以使用其传递变量参数,但是没有可以调用的方法。stdClass类可以被继承,只是这样做没有什么意义。

该类是PHP的保留类,并不是所有类的基类。
  1. 1 <?php  

  2. 2 class foo {}  

  3. 3 $bar = new foo();  

  4. 4 echo $bar instanceof stdClass?'yes':'no';  

  5. 5 //output:no

  6. 另外一个例子:

  7. view sourceprint?01 <?php  

  8. 02 // CTest does not derive from stdClass  

  9. 03 class CTest {  

  10. 04     public $property1;  

  11. 05 }  

  12. 06 $t = new CTest;  

  13. 07 var_dump($t instanceof stdClass);            // false  

  14. 08 var_dump(is_subclass_of($t, 'stdClass'));    // false  

  15. 09 echo get_class($t) . "\n";                   // 'CTest'  

  16. 10 echo get_parent_class($t) . "\n";            // false (no parent)  

  17. 11 ?>
复制代码
任何用(object)强制转换都会得到一个stdClass的实例。

参考:

http://www.phppan.com/2011/05/php-stdclass/

Codefor

作者: so_brave   发布时间: 2011-06-14

php4的时候就有了吧。

作者: imbiss   发布时间: 2011-06-14