溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PHP流程控制的替代語法

發(fā)布時(shí)間:2020-06-09 11:09:49 來源:網(wǎng)絡(luò) 閱讀:4469 作者:googlingman 欄目:web開發(fā)

PHP流程控制的替代語法(The alternative syntax of the PHP process control)早在PHP 4.時(shí)代就已存在,只是不見有太多的使用罷了。
##
那么,PHP中哪些語法有替代語法?

##
針對(duì)流程控制語句,包括if,while,for,foreach和switch這幾個(gè)語句有替代語法。

替代語法的基本形式

##
左花括號(hào)({)換成冒號(hào)(:),把右花括號(hào)(})分別換成 endif;,endwhile;,endfor;,endforeach; 以及 endswitch;
##

應(yīng)用

典型情況下,在純PHP代碼中一般不使用上述替代語法形式,以便與其他流行語句盡量保持一致的可讀性原因所致吧。但是,在網(wǎng)頁語言中,當(dāng)你使用PHP開發(fā)時(shí),就會(huì)經(jīng)常見到流程語句的替代語法形式了。
也就是說,這些語法能發(fā)揮的地方是在PHP和HTML混合頁面的代碼里面。好處如下:

1.使HTML和PHP混合頁面代碼更加干凈整齊。

有代碼潔癖的朋友最懼怕的就是亂七八糟的混合代碼,有了這些沒有花括號(hào)的替代語法,各位愛干凈的朋友開心到尿震。

2.流程控制邏輯更清晰,代碼更容易閱讀

要改別人的PHP和HTML混合代碼,打開發(fā)現(xiàn),我擦!太TMD垃圾了!如果用替代語法,我想再垃圾的程序開發(fā)人員也不至于寫的太亂吧。

3.一些從ASP等其他類basic語言家族轉(zhuǎn)來的朋友,會(huì)更容易使用PHP。

##
一個(gè)典型的例子是在WordPress網(wǎng)站代碼中,你會(huì)經(jīng)常見到。舉例如下:

<?php
/**
 * The template for displaying the header
 *
 * Displays all of the head element and everything up until the "site-content" div.
 *
 * @package WordPress
 * @subpackage Twenty_Fifteen
 * @since Twenty Fifteen 1.0
 */
?><!DOCTYPE html>
<html <?php language_attributes(); ?> class="no-js">
<head>
    <meta charset="<?php bloginfo( 'charset' ); ?>">
    <meta name="viewport" content="width=device-width">
    <link rel="profile" >
    <link rel="pingback" href="<?php bloginfo( 'pingback_url' ); ?>">
    <!--[if lt IE 9]>
    <script src="<?php echo esc_url( get_template_directory_uri() ); ?>/js/html5.js"></script>
    <![endif]-->
    <?php wp_head(); ?>
</head>

<body <?php body_class(); ?>>
<div id="page" class="hfeed site">
    <a class="skip-link screen-reader-text" href="#content"><?php _e( 'Skip to content', 'twentyfifteen' ); ?></a>

    <div id="sidebar" class="sidebar">
        <header id="masthead" class="site-header" role="banner">
            <div class="site-branding">
                <?php
                    twentyfifteen_the_custom_logo();

                    if ( is_front_page() && is_home() ) : ?>
                        <h2 class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></h2>
                    <?php else : ?>
                        <p class="site-title"><a href="<?php echo esc_url( home_url( '/' ) ); ?>" rel="home"><?php bloginfo( 'name' ); ?></a></p>
                    <?php endif;

                    $description = get_bloginfo( 'description', 'display' );
                    if ( $description || is_customize_preview() ) : ?>
                        <p class="site-description"><?php echo $description; ?></p>
                    <?php endif;
                ?>
                <button class="secondary-toggle"><?php _e( 'Menu and widgets', 'twentyfifteen' ); ?></button>
            </div><!-- .site-branding -->
        </header><!-- .site-header -->

        <?php get_sidebar(); ?>
    </div><!-- .sidebar -->

    <div id="content" class="site-content">
上述代碼來自于著名的Twenty_Fifteen主題中的header.php文件定義。
向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI