【Cakephp】FormHelperについて

こんにちわ、masumasuです。

新緑の香りがすがすがしい季節となりました。皆さまはいかがお過ごしでしょうか。

今回は、FormHelperについて書いていきます。

FormHelperはフォーム作成に利用するCakephpのビューの機能になります。

FormHelperを使用すればレイアウトの作成が効率的になります。

では、フォームの開始、作成、終了時に使用するメソッドをご紹介します。

フォームの開始:create()

‘create()’はフォームの開始タグを出力するメソッドになります。

<?= $this->Form->create($context, $options); ?>

フォームの作成:control()

‘control()’はフォームの入力を生成するメソッドになります。

<?= $this->Form->control($fieldName, $options); ?>

$fieldNameは生成する入力フィールドの名前を指定し、$optionsにはフィールドのタイプやクラスなどの追加設定を行うことができます。

フォームの終了:end()

‘end()’はフォームの終了タグを出力するメソッドになります。

<?= $this->Form->end(); ?>

例として

テキスト入力フィールドの場合:

<?= $this->Form->control('username', ['label' => 'ユーザー名']); ?>

上記コードは「ユーザー名」というラベル付きのテキスト入力フィールドを生成します。

パスワード入力フィールドの場合:

<?= $this->Form->control('password', ['type' => 'password', 'label' => 'パスワード']); ?>

上記コードは「パスワード」というラベル付きのパスワード入力フィールドを生成します。

選択リストの場合:

<?= $this->Form->control('gender', [
'type' => 'select',
'options' => ['male' => '男性', 'female' => '女性'],
'label' => '性別'
]); ?>

上記コードは「性別」というラベル付きのドロップダウンメニューを生成し、「男性」と「女性」の選択肢を生成します。

チェックボックスの場合:

<?= $this->Form->control('agree', ['type' => 'checkbox', 'label' => '規約に同意します']); ?>

上記コードは「規約に同意します」というラベル付きのチェックボックスを生成します。

まとめ

今回はCakePHPのFormHelperを使ってフォームを作成する方法を書きました。

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