मैं एक अनुकूलन सनकी (कम से कम मेरी परिभाषा से) हूं और यह सवाल मुझे थोड़ी देर के लिए परेशान कर रहा है।PHP || और & amp तार्किक अनुकूलन
मैं सोच रहा हूँ अगर पीएचपी & & पर कुछ अनुकूलन करता है और ||: निम्न उदाहरण लें:
$a = "apple";
$b = "orange";
if ($a == "orange" && $b == "orange") {
//do stuff
}
जब कि कोड निष्पादित करता है, यह अगर $ एक "नारंगी के बराबर है की जाँच करेगा। " इस मामले में यह नहीं है। हालांकि, & & ऑपरेटर है। चूंकि पहला भाग ($ a == "नारंगी") पहले से ही झूठा लौटा है, क्या PHP अभी भी जांच करेगा कि $ बी "नारंगी" के बराबर है या नहीं?
मैं || के लिए एक ही सवाल है:
$a = "orange";
$b = "orange";
if ($a == "orange" || $b == "orange") {
//do stuff
}
जब यह जाँच करता है, तो $ एक बराबर करने के लिए "नारंगी" है यह सच देता है। चूंकि वह || ऑपरेटर सच हो जाता है, क्या PHP भी के दूसरे भाग की जांच करेगा (चूंकि हम पहले ही जानते हैं कि यह सच होगा)?
उम्मीद है कि मैं यहां समझ रहा हूं, और उम्मीद है कि किसी के पास मेरे लिए जवाब है। धन्यवाद!
है यही कारण है कि मैं हमेशा मान लिया गया है। और, व्यावहारिक रूप से, और ऑपरेटर इस तरह से काम करता है। उदाहरण के लिए, मैं 'if (iss ($ a) और $ $ कुछ क्लासस और $ $ a-> कुछ विधि() ==' नारंगी ') का उदाहरण दे सकता हूं और इसे अगले परीक्षण के लिए सशर्त के प्रत्येक चरण को पारित करना होगा। लेकिन, मेरे पास मुझे वापस करने के लिए कुछ भी नहीं है, इस तथ्य को छोड़कर मुझे पता है कि यह काम करता है। –
क्यों कोशिश नहीं करते?'अगर (सच || मरें()) {echo '1';}' और 'if (true && die()) {echo '1';}' –