我想使某些操作仅适用于已登录的用户。 我试图限制某些这段代码:限制一些动作,_remap函数,CodeIgniter
function _remap($method)
{
$restricted = array('update_rating', 'delete_post');
if(! $this->session->userdata('logged_in') && in_array($method, $restricted))
{
echo 'Log in, please';
}
else {
$this->$method();
}
}
但是这$ - > $()方法,并没有收到这是在URL中发送的参数。该怎么办? 我想仅为登录用户提供一些动作。
`_remap`是一个特殊的函数从URL修改调用函数...如果要限制通过URL访问功能,则必须追加下划线`_foo($瓦尔)` - 这可以只能在你的控制器中调用(不通过url)。澄清也许?否则您的代码看起来不错。在上面,无论调用什么函数,`_remap`都会根据您的条件比较请求并尝试调用它。 – Ross 2010-12-05 19:47:26
不,我想让一些功能只允许记录用户。 – Kir 2010-12-05 20:12:29