get_resource_type

(PHP 4 >= 4.0.2, PHP 5, PHP 7, PHP 8)

get_resource_type返回资源类型

说明

get_resource_type(resource $resource): string

此函数获取给定资源的类型。

参数

resource

已评估的资源句柄。

返回值

如果给定的 resource 是一个资源,此函数将返回一个字符串,表示其类型。如果此函数无法识别该类型,返回值将为字符串 Unknown

如果 resource 不是 resource,此函数将返回 null 并生成错误。

示例

示例 #1 get_resource_type() 示例

<?php
$fp
= fopen("foo", ""w"");
echo
get_resource_type($fp) . "\n";

// 从 PHP 8.0.0 开始,以下不再有效。curl_init 函数现在返回一个 CurlHandle 对象。
$c = curl_init();
echo
get_resource_type($c) . "\n";
?>

以上示例在 PHP 7 中的输出

stream
curl

参见

添加笔记

用户贡献的笔记 1 条笔记

4
CertaiN
10 年前
尝试此操作以了解行为

<?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');
?>

将显示为...

[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
警告:get_resource_type() 期待参数 1 是 resource,给定的是 null,位于 ... 的第 10 行
is_resoruce($resource) => FALSE
To Top