参考にさせて頂いたページ
ビューを使おう!(3/3):初心者のためのCakePHP2.0 プログラミング入門
SampleController.phpの記述内容
参考サイトにならって以下の通り。
<?php
App::uses('AppController', 'Controller');
class SampleController extends AppController {
public function index() {
$this->set("title_for_layout","Index Page");
$this->set("msg","hello!");
$this->set("datas",array("One","Two"));
}
}
index.ctpの記述内容
<h1>Index Page</h1>
<p>this is test View.</p>
<p>message: <?php echo $msg; ?></p>
<p> </p>
<p>Data.</p>
<div>
<ul>
<?php foreach($datas as $data): ?>
<li><?php echo $data; ?></li>
<?php endforeach; ?>
</ul>
</div>
SampleController.phpの記述内容についての解説
$this->set("変数名","値");
でViewに変数を渡しており、ここでは$はいらない。
$this->set("title_for_layout","Index Page");
上記の変数title_for_layout
はページタイトルを設定する特別な用途が与えられている変数。
set();
で値をViewに渡している。
$this->set("msg","hello!");
$this->set("datas",array("One","Two"));
上記の二行は変数msg
とdatas
に値を格納してViewに渡している。
index.ctpの記述内容についての解説
<?php echo $msg; ?>
上記のようにechoで$msgが使える。
設定するときは$this->set("msg","hello!");
のように$は付けないけど、使うときは$msgとなる。
<?php foreach($datas as $data): ?>
<li><?php echo $data; ?></li>
<?php endforeach; ?>
上記のように配列$datasも同様。
ページを確認してみる
確認するURLは引き続きhttp://192.168.33.10/cakephp/sample/indexです。