2010-02-04 4 views

उत्तर

25

पर एक नजर डालें instanceof operator, is_a function या get_class function का प्रयास करें:

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

अजीब ... काम किया उन में से कोई भी ... और im यकीन है कि इसकी एक mysqli वस्तु कारण मैं उस पर एक mysqli_fetch_assoc करते हैं और जब मैं एक अगर (is_a ($ वर, 'mysqli' जोड़ने यह works..but) कुछ भी नहीं outputted है और न ही जब मैं अन्य 2 .. – ajsie

+4

@noname का उपयोग करें:। यदि आपका '(कर mysqli_fetch_assoc $ वर) '' तो $ var' नहीं एक MySQLi वस्तु लेकिन एक MySQLi परिणाम संसाधन (http://php.net/resource देखें)। यह कुछ अलग है। संस्करणों के लिए – Gumbo

3

आप शायद instanceof ऑपरेटर चाहता हूँ।

यह व्युत्पन्न कक्षाओं के लिए भी काम करेगा, अजीब मामले में कि आप अपने स्वयं के रैपर का विस्तार या निर्माण कर रहे हैं।

+0

ललित PHP5 + –

+2

हां। आम तौर पर जब तक एक पोस्टर PHP4 निर्दिष्ट करता है , यह मानना ​​सुरक्षित है कि वे इन दिनों PHP5 का उपयोग कर रहे हैं एस। PHP4 अब दो साल से अधिक समय से मर चुका है। – zombat

5

Тhe Gumbo के निर्णय से काम करता है, लेकिन इस मामले में अगर $ वर mysqli_result का उदाहरण है की जांच करना चाहिए, यानी

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