get_resource_type
(PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8)
get_resource_type — 返回资源(resource)类型
描述
get_resource_type(resource
$handle
): string此函数返回一个字符串,用于表示传递给它的 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
?>

User Contributed Notes 1 note
CertaiN ¶
8 years ago
Try this to know behavior:
<?php
function resource_test($resource, $name) {
echo
'[' . $name. ']',
PHP_EOL,
'(bool)$resource => ',
$resource ? 'TRUE' : 'FALSE',
PHP_EOL,
'get_resource_type($resource) => ',
get_resource_type($resource) ?: 'FALSE',
PHP_EOL,
'is_resoruce($resource) => ',
is_resource($resource) ? 'TRUE' : 'FALSE',
PHP_EOL,
PHP_EOL
;
}
$resource = tmpfile();
resource_test($resource, 'Check Valid Resource');
fclose($resource);
resource_test($resource, 'Check Released Resource');
$resource = null;
resource_test($resource, 'Check NULL');
?>
It will be shown as...
[Check Valid Resource]
(bool)$resource => TRUE
get_resource_type($resource) => stream
is_resoruce($resource) => TRUE
[Check Released Resource]
(bool)$resource => TRUE
get_resource_type($resource) => Unknown
is_resoruce($resource) => FALSE
[Check NULL]
(bool)$resource => FALSE
get_resource_type($resource) => FALSE
Warning: get_resource_type() expects parameter 1 to be resource, null given in ... on line 10
is_resoruce($resource) => FALSE
备份地址:http://www.lvesu.com/blog/php/function.get-resource-type.php