PHP中的冒号运算符

PHP中的冒号运算符

本文介绍了PHP中的冒号运算符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 29岁程序员,3月因学历无情被辞! 这是wordpress代码的一部分,我不明白:This is part of the wordpress code and I don't understand it: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中的大括号。因此,如果我替换冒号,我会得到这个:A colon can replace a curly bracket in PHP. So if I substitute the colons, I get this:if ( is_404() && $template = get_404_template() ) { elseif ( is_search() && $template = get_search_template() ) { elseif ( is_tax() && $template = get_taxonomy_template() ) { ... } }}else对我来说没有任何意义,因为如果每个elseif都缺少它的开头。Makes no sense to me, because each elseif is missing its opening if.推荐答案 Reggie, 示例:if ($a) : doThis();elseif ($b) : doThat();else : doTheOther();endif; 将成为if ($a) { doThis(); }elseif ($b) { doThat(); }else { doTheOther(); } OR (因为它只是一个声明,而不是声明块)if ($a) doThis();elseif($b) doThat();else doTheOther(); 参考: 控制结构的替代语法至于这段特定代码: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($ a){elseif($ b){}} )Hint : The elseif statement does NOT include the other elseif statements. (like elseif ($a) { elseif($b) {} }) 这篇关于PHP中的冒号运算符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持! 上岸,阿里云!
08-06 14:12