首页 > php > PHP的stdClass预定义类

PHP的stdClass预定义类

2010年5月24日 发表评论 阅读评论

stdClass是PHP的一个基类,所有的类几乎都继承这个类,所以任何时候都可以被new,可以让这个变量成为一个object。同时,这个基类又有一个特殊的地方,就是没有方法。最重要的一点是对象和数组资源耗费的问题:PHP5的对象的独特性,对象在任何地方被调用,都是引用地址型的,所以相对消耗的资源会少一点。在其它页面为它赋值时是直接修改,而不是引用一个拷贝。数组在程序的使用中应该是最方便的,然而数组的每次被引用($a = $b),其实都是创建了一个副本,而且,数组被unset后,还是占用了内存(没有测试过)。

引用zend的入门教程中的代码:
$this->view->album = new stdClass();
              $this->view->album->id = null;
              $this->view->album->artist = ”;
              $this->view->album->title = ”;
如果不是刻意要创建新对象,只是作为引用,推荐stdClass代替数组了.
如果其它任何类型的值被转换成对象,内置类 stdClass 的一个实例将被建立。如果该值为 NULL,则新的实例为空。对于任何其它的值,名为 scalar 的成员变量将包含该值。
<?php
$obj = (object) 'cao';
echo $obj->scalar;  // outputs 'cao'
?>
分类: php 标签: 2,657 次阅读
原文链接:http://www.wenhq.com/article/view_457.html
欢迎转载,请注明出处:亲亲宝宝
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.