2012-04-07 8 views
5

में यह वर्डप्रेस कोड का हिस्सा है और मैं इसे समझ में नहीं आता:बृहदान्त्र ऑपरेटर पीएचपी

if  (is_404()   && $template = get_404_template()   ) : 
elseif (is_search()   && $template = get_search_template()  ) : 
elseif (is_tax()   && $template = get_taxonomy_template()  ) : 
elseif (is_front_page()  && $template = get_front_page_template() ) : 
elseif (is_home()   && $template = get_home_template()   ) : 
elseif (is_attachment()  && $template = get_attachment_template() ) : 
    remove_filter('the_content', 'prepend_attachment'); 
elseif (is_single()   && $template = get_single_template()  ) : 
elseif (is_page()   && $template = get_page_template()   ) : 
elseif (is_category()  && $template = get_category_template()  ) : 
elseif (is_tag()   && $template = get_tag_template()   ) : 
elseif (is_author()   && $template = get_author_template()  ) : 
elseif (is_date()   && $template = get_date_template()   ) : 
elseif (is_archive()  && $template = get_archive_template()  ) : 
elseif (is_comments_popup() && $template = get_comments_popup_template()) : 
elseif (is_paged()   && $template = get_paged_template()   ) : 
else : 
    $template = get_index_template(); 
endif; 

एक बृहदान्त्र PHP में एक धनुषाकार कोष्ठक बदल सकते हैं। तो अगर मैं कोलन स्थानापन्न, मैं इस मिल:

if  (is_404()   && $template = get_404_template()   ) { 
    elseif (is_search()   && $template = get_search_template()  ) { 
     elseif (is_tax()   && $template = get_taxonomy_template()  ) { 
     ... 
     } 
    } 
} 
else 

मेरे लिए कोई मतलब नहीं है, क्योंकि प्रत्येक elseif इसके उद्घाटन करता है, तो याद आ रही है।

+9

मैं थोड़ा मर गया ... –

+2

यह .... भयानक है। – dmp

+0

मुझे लगता है कि मुझे पता है कि ओपी क्या उलझन में है ... –

उत्तर

17

रेगी, अगर/PHP में किसी और बयानों में

कोलन: जगह ब्रेसिज़ लेकिन ब्रेसिज़ की एक जोड़ी के बारे में नहीं है।

उदाहरण:

if ($a) : doThis(); 
elseif ($b) : doThat(); 
else : doTheOther(); 
endif; 

if ($a) { doThis(); } 
elseif ($b) { doThat(); } 
else { doTheOther(); } 

याबन जाएगा

(क्योंकि यह सिर्फ एक बयान और बयानों की नहीं एक ब्लॉक है) 210
if ($a) doThis(); 
elseif($b) doThat(); 
else doTheOther(); 

संदर्भ:Alternative Syntax for Control Structures


कोड के इस विशिष्ट टुकड़े के लिए के रूप में:

if  (is_404()   && $template = get_404_template()   ) : 
elseif (is_search()   && $template = get_search_template()  ) : 
elseif (is_tax()   && $template = get_taxonomy_template()  ) : 

इसकी अनुवाद

को
if  (is_404()   && $template = get_404_template()   ) 
    { /* DO NOTHING */ } 
elseif (is_search()   && $template = get_search_template()  ) 
    { /* DO NOTHING */ } 

संकेत:elseif कथन में अन्य elseif बयान शामिल नहीं हैं। (जैसे elseif ($a) { elseif($b) {} })