Variable handling 函数
在线手册:中文 英文
PHP手册

get_resource_type

(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
?>


Variable handling 函数
在线手册:中文 英文
PHP手册
PHP手册 - N: 返回资源(resource)类型

用户评论:

avp200681 at gmail dot com (13-Jun-2011 11:11)

This function will generate an error and return NULL instead FALSE in the next example:

<?php

$var
= 3;
var_dump(get_resource_type($var));

?>

hessodreamy at gmail dot com (29-May-2007 12:07)

Furthermore, this function returns 'stream' on php 4.3 on windows & linux.
You if you want to differentiate between a file resource and other stream resources, as stated before stream_get_meta_data() gives you an array which, on my system, contains the following elements which might suggest a file handle:
[wrapper_type] => plainfile
[stream_type] => STDIO

However I've only compared this to a stream from a url, so I include this only as a suggestion.

jdhawk _at_ gmail (05-Oct-2005 09:18)

In PHP5 (on Linux), the above example identifies the "file" handler as a 'stream', not 'file'.

This can be particularly worrisome if you're trying to determine the type of stream using this function.

The alternative is to use <?php stream_get_meta_data() ?>, which returns an array containing "stream_type (string) - a label describing the underlying implementation of the stream."