PHP type juggling, "String" == 0 and "String" == true -


मेरे पास एक बहुत ही सरल सवाल है PHP में,

  यदि ('abc' == 0) {// true} अगर ('abc' == 1) {// false}  
< पी> मुझे पता है कि पृष्ठ हमें बताता है कि ऐसा होना चाहिए। लेकिन, मुझे यह अजीब लगता है इसके अलावा,

  यदि ('abc' == true) {// true} अगर ('abc' == गलत) {// false}  
< पी एस> दो रूपांतरणों के पीछे तर्क क्या है?

रूपांतरण 1 < / P>

जब स्ट्रिंग और पूर्णांक तुलना किए जाते हैं, स्ट्रिंग पहले पूर्णांक में कनवर्ट हो जाती है और फिर तुलना की जाती है। चूंकि उन तारों में कोई भी प्रमुख पूर्णांक नहीं है, इसलिए वे शून्य में परिवर्तित हो जाते हैं।

रूपांतरण 2

कोई भी रिक्त स्ट्रिंग मान बुलियन सत्य है।

से:

  निम्न चीजों को रिक्त माना जाता है: "" (एक खाली स्ट्रिंग) 0 (0 एक पूर्णांक के रूप में) 0.0 (0 एक फ्लोट के रूप में) "0" (0 स्ट्रिंग के रूप में) नल फॉल्स सरणी () (एक खाली सरणी) $ var; (एक वैरिएबल घोषित, लेकिन बिना एक मान)  

इन्हें भी देखें:


Comments

Popular posts from this blog

php - Select box validation (in laravel) -

java - Joda Time Interval Not returning what I expect -

html - Tabindex not working for button -