ホームページ  >  記事  >  バックエンド開発  >  PHP フロー制御であまり使用されない代替構文

PHP フロー制御であまり使用されない代替構文

WBOY
WBOYオリジナル
2016-06-23 13:31:04860ブラウズ

WordPress テーマを作成する予定で、次の構文を目にしました:

    <div id="primary" class="content-area">        <main id="main" class="site-main" role="main">        <?php if ( have_posts() ) : ?>            <?php if ( is_home() && ! is_front_page() ) : ?>                <header>                    <h1 class="page-title screen-reader-text"><?php single_post_title(); ?></h1>                </header>            <?php endif; ?>            <?php            // Start the loop.            while ( have_posts() ) : the_post();                /*                 * Include the Post-Format-specific template for the content.                 * If you want to override this in a child theme, then include a file                 * called content-___.php (where ___ is the Post Format name) and that will be used instead.                 */                get_template_part( 'content', get_post_format() );            // End the loop.            endwhile;            // Previous/next page navigation.            the_posts_pagination( array(                'prev_text'          => __( 'Previous page', 'twentyfifteen' ),                'next_text'          => __( 'Next page', 'twentyfifteen' ),                'before_page_number' => '<span class="meta-nav screen-reader-text">' . __( 'Page', 'twentyfifteen' ) . ' </span>',            ) );        // If no content, include the "No posts found" template.        else :            get_template_part( 'content', 'none' );        endif;        ?>        </main><!-- .site-main -->    </div><!-- .content-area -->



その後、PHP には一般的には使用されない代替構文があることに気付きました。 http://www.jb51 による。 net/article /23252.htm

PHP の代替構文は何ですか?
フロー制御 (if、while、forforeach、switch を含む) ステートメントには代替構文があります。

代替構文の基本形式:
左中括弧 ({) をコロン (:) に置き換え、右中括弧 (}) を endif;、endwhile;、endfor;、endforeach および endswitch; に置き換えます。例を示します。 例:


次のようにコードをコピーします。

上記ステートメントは

が負の数
と同等です



なぜ純粋な PHP コードではほとんど見えないのでしょうか?

これらの構文は C ファミリーの伝統と少し矛盾しており、少し代替的なものです。誰もがこの構文に慣れておらず、あまり便利ではありません。そんな代替案?玉が痛いですか?
存在するのは合理的であり、独自の用途があります。これらの構文が使用できる場所は、PHP と HTML が混在するページのコード内です。利点は次のとおりです:
1. HTML と PHP が混在したページのコードをよりクリーンで整然としたものにします。
コードに夢中になっている人にとって最も怖いのは、中括弧のないこれらの代替構文を使用すると、きれい好きの友人たちが大喜びすることでしょう。
2. プロセス制御ロジックがより明確になり、コードが読みやすくなります
他の人の PHP と HTML が混在したコードを変更したい場合は、それを開いて見つけてください。削除します。なんてクソゴミだ!代替構文が使用されれば、プログラム開発者がどんなにくだらないものであっても、彼の文章はそれほど乱雑になることはないと思います。
3. ASP やその他の基本的な言語ファミリーから移行した友人の中には、PHP を使用する方が簡単だと感じる人もいます。

長々と話してしまいましたが、無駄です、何かやることはありますか?これをどうやって使うの?

前述の使用法によれば、if ステートメントの代替構文は次のとおりです。

次のようにコードをコピーします。


div>equal to 5
6
?>

while 代替構文:


  • 何を注文するか


  • 代替構文:

    ループする内容


    foreach の代替構文:



    次のようにコードをコピーします。 :

    switch ( $i):
    case 0:

    echo "i = 0";
    case 1:
    echo "i = 1";

    case 2:

    echo "i は 2 に等しい";

    デフォルト:
    echo "i は 0、1、または 2 に等しくない";


    著作権ステートメント: この記事はオリジナルです。ブロガーによる記事であり、ブロガーの許可なく転載することはできません。

    声明:
    この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
    前の記事:いくつかアドバイスをください: Facebook、twitter、google+ に共有するためのインターフェースはありますか?次の記事:いくつかアドバイスをください: Facebook、twitter、google+ に共有するためのインターフェースはありますか?

    関連記事

    続きを見る