资源 resource
是一种特殊变量,保存了到外部资源的一个引用。资源是通过专门的函数来建立和使用的。
(PHP 4 >= 4.0.2, PHP 5)
get_resource_type — 返回资源(resource)类型
string get_resource_type ( resource $handle )
此函数返回一个字符串,用于表示传递给它的 resource
的类型。如果参数不是合法的 resource
,将产生错误。
- <?php
- $c = mysql_connect();
- echo get_resource_type($c)."/n";
- // 打印:mysql link
- $fp = fopen("foo","w");
- echo get_resource_type($fp)."/n";
- // 打印:file
- $doc = new_xmldoc("1.0");
- echo get_resource_type($doc->doc)."/n";
- // 打印:domxml document
- ?>
由于资源类型变量保存有为打开文件、数据库连接、图形画布区域等的特殊句柄,因此将其它类型的值转换为资源没有意义。
由于 PHP 4 Zend 引擎引进了引用计数系统,可以自动检测到一个资源不再被引用了(和 Java 一样)。这种情况下此资源使用的所有外部资源都会被垃圾回收系统释放。因此,很少需要手工释放内存。
Note: 持久数据库连接比较特殊,它们不会被垃圾回收系统销毁。参见数据库永久连接一章。