2012-08-02 11 views
10

क्या PHP में किसी अन्य ब्लॉक में अंतिम अन्य कथन छोड़ना ठीक है। क्या यह कोड ठीक हैPHP में, क्या किसी और को अंतिम बयान की आवश्यकता है?

if (condition): 
    // code 
elseif (othercondition): 
    // more code 
endif; 

या अंत में यह और होना चाहिए?

if (condition): 
    // code 
elseif (othercondition): 
    // more code 
else 
    // more code 
endif; 

मुझे यकीन है कि यह होना चाहिए लेकिन मैं इसे कहीं भी पुष्टि नहीं कर सकता। संपादित करें - मैंने कोशिश की है और यह काम करता है लेकिन मैं बस सुनिश्चित करना चाहता हूं।

+3

हाँ, यह ठीक है। – wanovak

+2

आपके पास कोड है - इसे आजमाएं। –

+2

हां यह वैकल्पिक है – Oussama

उत्तर

12

यदि आपको अंतिम else -block की आवश्यकता नहीं है, तो एक लिखें नहीं। कोड के ब्लॉक होने के लिए यह बेवकूफ़ है (संभवतः केवल this is useless -comment) जिसमें इसकी आवश्यकता नहीं है।

+1

+1 एक साधारण प्रश्न का एक सरल जवाब। – Asaph

4

जबकि @ oezi के जवाब 100% सही है, तो मैं भी है कि सम्मान के साथ सबसे अच्छा अभ्यास, else हालत सभी मामलों में इस्तेमाल किया जाना चाहिए करने के लिए जोड़ना होगा। इसका मतलब यह नहीं है कि आपको else ब्लॉक का शाब्दिक रूप से उपयोग करना होगा, हालांकि, आप if से पहले अपना "अन्य कोड" डालकर तार्किक रूप से एक ही चीज़ को पूरा कर सकते हैं। उदाहरण के लिए:

$foo = 'baz'; 

if (...) { 
    $foo = 'foo'; 
} else if (...) { 
    $foo = 'bar'; 
} 

... कार्यात्मक के बराबर है:

if (...) { 
    $foo = 'foo'; 
} else if (...) { 
    $foo = 'bar'; 
} else { 
    $foo = 'baz'; 
} 

मैं तर्क था कि else के उपयोग को और अधिक स्पष्ट है जब कोड को पढ़ने के लिए, लेकिन किसी भी तरह से ठीक है। बस याद रखें कि तीसरा मामला पूरी तरह से छोड़कर बग का एक आम कारण है (और कुछ मामलों में, सुरक्षा छेद भी)।

+0

धन्यवाद, यही कारण है कि मैं सवाल पूछ रहा था, मैंने इसे ऐसा नहीं देखा था, इसलिए मुझे लगता है कि एक कारण है। – byronyasgur