PHP的stdClass预定义类
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'
?>
欢迎转载,请注明出处:亲亲宝宝