$this->set( 変数名 , 値 );これで、指定した変数に値を設定することができます。では、ビュー側は? 単に、setで作られた変数をそのまま利用するだけです。例えば、
$this->set(“name”,”tuyano”);こんな具合にコントローラー側で実行したとしましょう。するとビューでは、$nameという変数が用意され、そこに”tuyano”が代入されています。後は、$nameをそのままechoするなりして利用すればよいのです。
$this->set("title_for_layout","Index Page");このtitle_for_layoutという変数は、CakePHP2.0が利用している変数で、ページのタイトルを設定するものです。CakePHPでは、<title>タグが自動的に<body>に移動してしまいましたが、実はタイトルは<title>ではなく、このtitle_for_layoutで設定するようになっていたのですね。これは非常によく使う変数ですので、あわせて覚えておきましょう。
※リストが表示されない場合
AddBlockなどの広告ブロックツールがONになっているとリストなどが表示されない場合があります。これらのツールをOFFにしてみてください。
※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>
<< 前へ |