(मूल रूप से अपने सवाल में leepowers द्वारा पोस्ट )
त्रुटि संदेश एक बड़े कारण के लिए भ्रमित कर रहा है:
प्राथमिक प्रकार के नाम PHP में आरक्षित नहीं हैं
निम्नलिखित सभी मान्य वर्ग घोषणाएँ हैं:
class string { }
class int { }
class float { }
class double { }
मेरी गलती यह सोचने में थी कि त्रुटि संदेश केवल स्ट्रिंग आदिम प्रकार का उल्लेख कर रहा था - शब्द 'उदाहरण' को मुझे विराम देना चाहिए था। आगे उदाहरण के लिए एक उदाहरण:
class string { }
$n = 1234;
$s1 = (string)$n;
$s2 = new string();
$a = array('no', 'yes');
printf("\$s1 - primitive string? %s - string instance? %s\n",
$a[is_string($s1)], $a[is_a($s1, 'string')]);
printf("\$s2 - primitive string? %s - string instance? %s\n",
$a[is_string($s2)], $a[is_a($s2, 'string')]);
आउटपुट:
$ s1 - आदिम स्ट्रिंग? हाँ - स्ट्रिंग उदाहरण? नहीं
$ s2 - आदिम स्ट्रिंग? नहीं - स्ट्रिंग उदाहरण? हाँ
PHP में जब यह वास्तव में एक को छोड़कर string
एक होने के लिए संभव string
है string
। किसी भी भाषा के साथ जो अंतर्निहित प्रकार रूपांतरण का उपयोग करता है, संदर्भ सब कुछ है।