PHP的对象和资源
PHP的对象和资源
对象
对象初始化
要初始化一个对象,用new语句将对象实例到一个变量中。
<?php
class foo
{
function do_foo()
{
echo"Doing foo.";
}
}
$bar=new foo;
$bar->do_foo();
?>
转换为对象
如果将一个对象转换成对象,它将不会有任何变化。如果其它任何类型的值被转换成对象,内置类stdClass的一个实例将被建立。如果该值为NULL,则新的实例为空。对于任何其它的值,名为scalar的成员变量将包含该值。
<?php
$obj=(object)‘ciao‘;
echo$obj->scalar;//outputs‘ciao‘
?>
资源
一个资源是一个特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的。所有这些函数及其相应资源类型见附录。
注:资源类型是PHP4引进的。
转换为资源
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,您无法将其它类型的值转换为资源。
释放资源
由于PHP4Zend引擎引进了资源计数系统,可以自动检测到一个资源不再被引用了(和Java一样)。这种情况下此资源使用的所有外部资源都会被垃圾回收系统释放。由此原因,很少需要用某些free-result函数来手工释放内存。
注:持久数据库连接比较特殊,它们不会被垃圾回收系统破坏。