開発

【初心者向け】php構文について【WordPress】

<?php if (条件) {
    echo '<p>Hello, World!</p>';
} ?>
<?php if (条件) : ?>
    <p>Hello, World!</p>
<?php endif; ?>

上記コードは同じ条件で同じ内容が出力されますが、phpを見慣れていない方には分かりづらいかもしれません。
今回は上記phpの違いについて説明します。

phpの構文とは

PHPの構文とは、PHPというプログラミング言語で書かれたコードを書くためのルールや形式のことです。つまり、PHPの構文を使うことで、コンピューターに命令を伝えるための文法や書き方を指定することができます。
例えば、PHPで「Hello, World!」という文言をただ表示する場合は以下のように記述します。

<?php echo 'Hello, World!'; ?>

このコードの中で、<? phpから ?>までがPHPの開始と終了を示し、echo “Hello, World!”;という行が「Hello, World!」という文言を表示する命令です。

PHPの構文を正しく使うことで、コンピューターに対して正確な指示を与えることができます。これにより、プログラムが動作するようになり、ウェブサイトやアプリケーションなど様々なソフトウェアを作ることができます。

通常の構文を使用した条件分岐

<?php if (条件) {
    echo '<p>Hello, World!</p>';
} ?>

この書き方では、通常のphpの構文を使用しています。
<?php if (条件) {から}の間に、条件が真の場合に実行されるコードを記述します。ここでは、echo ‘<p>Hello, World!</p>’;という行が条件が真の場合に表示される内容を示しています。

コロン構文を使用した条件分岐

<?php if (条件) : ?>
    <p>Hello, World!</p>
<?php endif; ?>

この書き方では、phpのコロン構文を使用しています。
:が通常の構文での { の役割、endif;が通常の構文での } の役割をし、その間にあるテキスト部分は、条件が真の場合に表示される内容です。

結局どちらを使うべき?

一概には言えず、ケースバイケースです。
例えば、出力するHTMLが何行にも渡る場合はHTMLの見やすさを確保するためにコロン構文を使用、条件に合った時にclass名「on」をつけるためだったら通常の構文と使い分けると良いですね。HTMLが主体か、PHPが主体かで判断しましょう。

練習問題

どちらも使う場合があるのですから、どちらも書けるようになっておいて損はありません。

お時間がある方は下記練習問題を試しにやってみてください。

<!-- 下記phpを通常構文にしてみましょう -->
<?php if (条件1) : ?>
    <p>Hello, World!</p>
<?php elseif (条件2) : ?>
    <p>Good morning, World!</p>
<?php else : ?>
    <p>Good night, World!</p>
<?php endif; ?>

<!-- 下記phpをコロン構文にしてみましょう -->
<?php if (条件A || 条件B) {
    echo '<p>Hello, World!</p>';
} elseif (条件C) {
    echo '<p>Good morning, World!</p>';
} else {
    echo '<p>Good night, World!</p>';
} ?>

まとめ

通常の構文を使用した場合は<?php ?>でコードブロックを囲みますが、コロン構文を使用した場合は:とendif;を使用してコードブロックの開始と終了を示します。
どちらの方法も同じ結果を得ることができますが、状況に応じて使い分けて、見やすいコーディングを心がけていきましょう。

アバター画像

r.s

グローワークスのコーダー兼プログラマー。最適なコードでサイトを動かすことに情熱を注いでいます。技術的課題を解決するのが得意です。