【Cakephp】Helperについて – Part 2

こんにちわ、masumasuです。

5月も後半となり初夏の訪れを感じる時期となりましたが、皆様いかがお過ごしでしょうか。

今回は前回に引き続きHelperの具体的なメソッドについて書いていきます。

Helperの具体的なメソッド

日付のフォーマット変換

TimeHelperは、日付のフォーマットを変換するメソッドになります。

$this->Time->format('Y-m-d', '2024-05-30');

このコードは、2024-05-30という日付をY-m-d形式で表示しています。

リンクの生成

HtmlHelperは、リンクを生成するためのメソッドになります。

$this->Html->link('ホーム', ['controller' => 'Pages', 'action' => 'display', 'home']);

このコードは、「ホーム」というテキストで、Pagesコントローラーのdisplayアクションへのリンクを生成しています。

文字列操作

TextHelperは、文字列の操作するメソッドになります。

例えば、長い文字列をトリミングする場合に使用したりします。

$this->Text->truncate('これは非常に長い文字列です。', 10);

このコードは、文字列を10文字にトリミングして表示しています。

カスタムHelperの作成

CakePHPでは、自分専用のHelperを作成することが出来ます。

以下は、カスタムHelperを作成して使用する例になります。

src/View/Helperディレクトリに新しいHelperファイルを作成します。例えば、MyHelper.phpというファイルを作成します。

 src/View/Helper/MyHelper.php
namespace App\View\Helper;

use Cake\View\Helper;

class MyHelper extends Helper
{
public function customFormat($text)
{
return strtoupper($text);
}
}

ビューでこのHelperを使用します。

テンプレートファイルで
$this->My->customFormat('hello world');

このコードは、hello worldというテキストを大文字に変換して表示しています。

まとめ

Helperを使ってビューのテンプレートを簡単に整理し、簡単に作成する方法を書きました。

ご覧いただきありがとうございます。