php

【cakephp】templateでifの様々な使い方解説【andやorなどの使い方も併せて解説】

プログラミング

こんにちは、フルスタックエンジニアのryuです。

今回の記事では、cakephpのtemplateでif文の使い方を解説します。templateでifを使うことで、条件によってHTMLを表示させたり表示させなかったり様々な制御を行うことができます。if文の条件でandやorなどの使い方も併せて解説します。

サーバー構築を実践で身につけるInfraAcademy

※本ページには、プロモーション・アフィリエイトリンクが含まれています

【cakephp】templateでifの基本的な使い方

今回の記事では、cakephpのtemplateでif文の様々な使い方について解説します。今回解説する内容は以下の通りです。

  • if文の使い方
  • elseif文の使い方
  • elseの使い方
  • andの使い方
  • ofの使い方

では詳しく解説します。

if文の基本的な使い方

cakephpのif文の基本的な使い方は以下の通りです。

//$content = "test" controllerで定義

<?php if(!empty($content)) :?>
   <p>contentの中身は</p>
   <?= h($content) ?>
   <p>です。</p>
<?php endif; ?>

//→「contentの中身はtestです。」と表示される

これは、$contentが空でない場合に、$contentを表示するHTMLになります。$contentはController内で定義しておきましょう。

elseif文の使い方

elseif文を使って複数の条件を指定してみましょう。

//$content = "hoge" controllerで定義

<?php if($content === "test" ) :?>
   <p>contentの中身は</p>
   <?= h($content) ?>
   <p>です。</p>
<?php elseif(!empty($content)) :?>
   <p>contentの中身は</p>
   <p>test以外</p>
   <p>です。</p>
<?php endif; ?>

//→「contentの中身はtest以外です。」と表示される

elseifはif文にマッチしなかった場合に、次の条件として判定されます。上記の場合は、$contentがtestでない場合で、$contentが空でなかったら、「contentの中身はtest以外です。」と表示されます。

else文の使い方

最後にelse文の使い方です。if文やelseif文にマッチしなかった場合にマッチします。

//$content = "" controllerで定義

<?php if($content === "test" ) :?>
   <p>contentの中身は</p>
   <?= h($content) ?>
   <p>です。</p>
<?php elseif(!empty($content)) :?>
   <p>contentの中身は</p>
   <p>test以外</p>
   <p>です。</p>
<?php else: ?>
    <p>contentの中身は</p>
   <p>空(から)</p>
   <p>です。</p>
<?php endif; ?>

//→「contentの中身は空(から)です。」と表示される

if構文の基本的な使い方については、こちらの記事で詳しく解説しています。

【cakephp】template内でif構文の書き方解説

andやorを使って複数の条件を指定する方法

if文でandを使って条件を指定する

if文でandを使って条件を指定する方法は、以下の通りです。

//$content = "test" controllerで定義

<?php if($content === "test" && !empty($content) ) :?>
   <p>contentの中身は</p>
   <?= h($content) ?>
   <p>です。</p>
<?php endif; ?>

//→「contentの中身はtestです。」と表示される

andを指定する場合は”&&”を使います。2つの条件が両方ともにマッチした場合にhtmlが表示されます。今回は$contentの中身が”test”かつ空でない場合に表示されます。

if文でorを使って条件を指定する

if文でorを使って条件を指定する方法は、以下の通りです。

//$content = "hoge" controllerで定義

<?php if($content === "test" || !empty($content) ) :?>
   <p>contentの中身は</p>
   <?= h($content) ?>
   <p>です。</p>
<?php endif; ?>

//→「contentの中身はhogeです。」と表示される

orを指定する場合は、”||”を使用します。今回は、$contentの中身が”test”もしくは空でない場合に表示します。

基本的には、templateの中身もphpの構文と同じです。templateでどのように書けば分からない場合は、phpのドキュメントを参考にしてみましょう!

PHP: 論理演算子 – Manual

cakephpのifで様々な条件を使う方法まとめ

今回の記事では、cakephpのif文で様々な条件を使ってtemplateを記述してみました。

if構文は基本的な内容なので覚えておきましょう!

当ブログでは、このようなITに関連する記事を発信しているので興味のある方は是非ご覧ください。

また、cakephpをさらに知りたいという方は、こちらの参考書を読んでみてください。

さらにCakePHPを勉強したい方はこちらの記事をご覧ください。

ABOUT ME
ryu@InfraAcademyというインフラ学習サービス運営
大手企業→上場ベンチャー→スタートアップでエンジニアをしていました。 インフラエンジニア歴10年以上。 Linuxやネットワークの学習ができるサービスInfraAcademyを運営中。
RELATED POST