This function will generate an error and return NULL instead FALSE in the next example:
<?php
$var = 3;
var_dump(get_resource_type($var));
?>
get_resource_type
(PHP 4 >= 4.0.2, PHP 5)
get_resource_type — Devuelve el tipo de recurso
Descripción
string get_resource_type
( resource
$handle
)Esta función obtiene el tipo del recurso dado.
Parámetros
-
handle -
El gestor de recurso evaluado.
Valores devueltos
Si el dado handle es un recurso esta función
devolverá una cadena que representa su tipo. Si el tipo no es identificado
por esta función, el valor de retorno será la cadena
Unknown.
Está función devolverá FALSE y generará un error si
handle no es un resource.
Ejemplos
Ejemplo #1 Ejemplo de get_resource_type()
<?php
// imprime: mysql link
$c = mysql_connect();
echo get_resource_type($c) . "\n";
// imprime: file
$fp = fopen("foo", "w");
echo get_resource_type($fp) . "\n";
// imprime: domxml document
$doc = new_xmldoc("1.0");
echo get_resource_type($doc->doc) . "\n";
?>
avp200681 at gmail dot com ¶
1 year ago
hessodreamy at gmail dot com ¶
5 years ago
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 ¶
7 years ago
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."
