2010-02-04 3 views

Répondre

25

Essayez le instanceof operator, le is_a function ou get_class function:

$var instanceof MySQLi 
is_a($var, 'mysqli') 
is_object($var) && get_class($var) == 'mysqli' 
+0

bizarre ... aucune de ces travaillé ... et je suis sûr que sa cause d'objet mysqli Je fais un mysqli_fetch_assoc dessus et ça fonctionne ... mais quand j'ajoute un if (is_a ($ var, 'mysqli') rien n'est sorti ni quand j'utilise l'autre 2 .. – ajsie

+4

@noname: Si vous faites 'mysqli_fetch_assoc ($ var) 'then' $ var' n'est pas un objet MySQLi mais une ressource de résultat MySQLi (voir http://php.net/resource) .C'est quelque chose de différent – Gumbo

3

Vous voudrez probablement l'opérateur instanceof.

Cela fonctionnera également pour les classes dérivées, dans le cas, par exemple, de l'extension ou de la construction de vos propres wrappers.

+0

Fin pour les versions PHP5 + –

+2

Oui Généralement sauf si une affiche spécifie PHP4 , il est sûr de supposer qu'ils utilisent PHP5 ces jours-ci s4 PHP4 est mort depuis plus de deux ans. – zombat

5

décision Тhe de travaux Gumbo, mais dans ce cas doit vérifier si $ var est instance de mysqli_result, à savoir

$var instanceof mysqli_result; 
is_a($var, 'mysqli_result'); 
get_class($var) == 'mysqli_result'; 
Questions connexes