こんにちは、フルスタックエンジニアのryuです。
今回の記事では、cakephpのtemplate内でif構文の書き方を解説します。template内でifを使えば、条件によってhtmlを表示させたり、表示させなかったりできます。if構文の書き方を詳しく解説します。
【cakephp】template内でif構文の書き方解説
cakephpのtemplate内でif構文ってどうやって使うの?
今回の記事では、cakephpのtemplate内でif構文の書き方を解説します。template内とは、index.ctpなど(.ctp)拡張子のファイルのことです。
if構文を使えるようになると、様々な表現ができるようになるので覚えておきたい内容です。
では、早速解説します。
if構文の使い方
if構文の使い方は下記の通りです。「src/Template/Pages/index.ctp」に下記の内容を加えます。
<?php if($number >10): ?>
<p>numberは10以上です。</p>
<?php endif; ?>
if構文は、<?php if([条件]): ?> ~<?php endif; ?>で書くことができます。
この間にhtmlを書くことで、条件に合った場合に、そのhtmlを表示することができます。
では、実際にcontrollerに値を入れてif文が動作するか見てみましょう。
public function index(){
$number = 100;
$this->set(compact('number'));
}
webページにアクセスすると、出力結果は下記のようになります。
$number = 100;の場合
$number = 1;の場合
このようにifでhtmlを表示したり、表示しないようにしたりできます。
elseの使い方
elseの使い方は下記の通りです。
<?php if($number >10): ?>
<p>numberは10以上です。</p>
<?php else: ?>
<p>numberは10以下です。 </p>
<?php endif; ?>
elseifを使う場合は下記の通りです。
<?php if($number === 10): ?>
<p>numberは10です。</p>
<?php elseif($number > 10 ): ?>
<p>numberは10より大きいです。</p>
<?php else: ?>
<p>numberは10以下です。 </p>
<?php endif; ?>
このようにelseを使うことで、さらに複雑な条件式を作ることができます。
template内でif構文の書き方
今回の記事では、template内でif構文の書き方を解説しました。
if構文は良く使うので覚えておきましょう!
今回の記事は、ドキュメントのこちらを参考にしております。
また、cakephpをさらに知りたいという方は、こちらの参考書を読んでみてください。