我只是想知道如何使用CakePHP中的$this->set()
方法来使用/定义自己的函数?我想做这样的事......
AppController.php
<?php
function checkSetup() {
if ($this->Auth->user('setup') == 'notcomplete') { return true; }
}
$this->set('isSetup', checkSetup());
?>
然后我将能够在我的视图文件中访问并调用它:
<?php if ($isSetup): ?>
You haven't setup your profile yet!
<?php endif; ?>
我已经尝试过了,但它显然不起作用,因为我得到了一个巨大的致命错误。关于我如何做到这一点的任何想法/建议?
答案 0 :(得分:1)
$this->set('isSetup', checkSetup());
该行需要在某个函数内部才能被调用。大概你想要它在app控制器的beforFilter中 - 就像这样:
<?php
App::uses('Controller', 'Controller');
class AppController extends Controller {
function beforeFilter() {
$this->set('isSetup', checkSetup());
}
function checkSetup() {
if ($this->Auth->user('setup') == 'notcomplete') { return true; }
}
}
?>