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 — Retourne le type de ressource
Description
string get_resource_type
( resource
$handle
)Cette fonction retourne le type de la ressource donnée.
Liste de paramètres
-
handle -
Le gestionnaire de ressources à évaluer.
Valeurs de retour
Si le paramètre handle est une ressource, cette
fonction retournera une chaîne de caractères représentant son type.
Si le type n'est pas identifié par cette fonction, la valeur de retour
sera la chaîne de caractères Unknown.
Cette fonction retournera FALSE et générera une erreur si
handle n'est pas une ressource.
Exemples
Exemple #1 Exemple avec get_resource_type()
<?php
// affiche : mysql link (lien mysql)
$c = mysql_connect();
echo get_resource_type($c) . "\n";
// affiche : file (fichier)
$fp = fopen("foo", "w");
echo get_resource_type($fp) . "\n";
// affiche : 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."
