質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

Q&A

解決済

2回答

891閲覧

CakePHP3 ヘルパーに変数埋め込み方法

DaisukeMori

総合スコア225

CakePHP

CakePHPは、PHPで書かれたWebアプリケーション開発用のフレームワークです。 Ruby on Railsの考え方を多く取り入れており、Railsの高速性とPHPの機動性を兼ね備えています。 MVCやORMなどを「規約優先の考え方」で利用するため、コードを書く手間を省くことができます。 外部のライブラリに依存しないので、単体での利用が可能です。

0グッド

0クリップ

投稿2018/04/09 04:24

CakePHP3のフォームヘルパーの中に
変数を埋め込んで、動的にvalue値を変更したいのですが、
phpタグそのものが表示されてしまい
うまく変数を使う事ができません。

HTMLではvalueにphpタグ付きで書くと
変数の値がきちんと表示されるのですが、
同じ事をヘルパーですることは可能でしょうか?

詳しい方、教えて頂けないでしょうか?

(例)

<?php // とりあえず$idに1を代入しておきます(適当) $id = 1; ?>

// フォームヘルパー <?=$id ?>がそのまま表示されてしまう

<?= $this->Form->input('username',['value'=>'<?=$id ?>']) ?>

// HTML直書き こちらはvalueに変数値が入るのは確認済
<input type="text" value="<?=$id ?>">

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

ベストアンサー

<?= $this->Form->input('username',['value'=>'<?=$id ?>']) ?>

ここ、中はPHPコードなので囲む必要ないです。

php

1<?= $this->Form->input('username',['value'=>$id]) ?>

追記

おそらくないとは思いますが、文字列として<?= ?>も欲しいなら下記のいずれか

php

1<?= $this->Form->input('username',['value'=>'<?='.$id.' ?>']) ?> 2 3<?= $this->Form->input('username',['value'=>"<?={$id} ?>"]) ?>

投稿2018/04/09 04:27

編集2018/04/09 04:30
m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

DaisukeMori

2018/04/09 04:31

なるほど!! だからタグが出てきたんですね。 ありがとうございました。無事解決です。
guest

0

上記コメントで解決しました。

投稿2018/04/09 04:33

DaisukeMori

総合スコア225

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2018/04/09 04:41 編集

ベストアンサーは質問者が選ぶものという原則があるのであまり細かく言いたくありませんし、催促しているようになるのも嫌なのですが、 ついた回答そのままで解決に至れたのでしたら、その回答にベストアンサーをつけるものだと思います。 ベストアンサーには「解決した方法」という補足がつきます。 同じような問題にぶちあたった人の観点からすると、まず「ベストアンサー」を見ます。 しかしその回答には解決策が書いてあるわけではないので、結局、ベストアンサーがついていない他の回答を探すか、この質問から離脱する可能性があります。 https://teratail.com/help/question-tips#questionTips4-1 > 一番役に立った回答をベストアンサーに選んでください。 DaisukeMoriさんの自己回答は「一番役に立つ」でしょうか?(イヤミのようで申し訳ない) また、今回の状況で自己解決としてしまうと、回答者(含め他の閲覧者)にいい印象はもたれず、その後の回答が付きづらくなります。
DaisukeMori

2018/04/09 07:10

答えてくれた方にベストアンサーを即座に付けたつもりでしたが その方法を間違えておりましたでしょうか? (自分には付けた記憶がありません。) テラテイルの仕組み自体まだ勉強不足なので 最適なやり方を教えて頂けると幸いです。
m.ts10806

2018/04/09 07:19 編集

見れば分かりますが、ご自身の「上記コメントで解決しました。」という回答にベストアンサーがついてますよ。 「解決した方法」というのがついているのがその証拠で、質問者以外ベストアンサーがつけられないので、DaisukeMoriさんによる操作で間違いありません。 (おそらく過去質問も同様でしょうか) 図示がないのでイメージがわきづらいかもしれませんが、 ヘルプもご一読ください。https://teratail.com/help もし自己解決でなく回答をくれた人にベストアンサーをつけたいのでしたら、自身で回答を書かないようにするか、 「回答に対する返信か」「回答か」を確認してからコメントを送信すべきですね。 幸いボタンは「コメントする」「回答する」でわかれているので。
m.ts10806

2018/04/09 07:22

一応、ベストアンサーの解除、付け替えも質問者の手で可能です。 今回どうするかはお任せしますが、今後は重々お気をつけください。
DaisukeMori

2018/04/09 07:34

このたびはご丁寧なご指導ありがとうございます。 ベストアンサーを付け替えておきました。 以後気を付けます。
m.ts10806

2018/04/09 07:36

ひとまず解決したようで何よりです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問