2010-03-15 49 views

回答

2
  1. 一)为了限制访问您的控制器功能,你shold使用私有函数声明的例子:

功能_example_function(){...}使用下划线!

这种方式不可能通过URL调用该函数。

  1. b)限制访问控制器中函数的其他简单方法是使用会话变量和状态来阻止访问。

2)是的,你可以使用cron来运行功能只需要调用的网址:

http://host/controller_name/FUNCTION

问候,
佩德罗

0

我有一个巨大的控制器 codeigniter,有许多功能。我想要限制访问某些 函数。我应该如何继续?

您可以使用某些基于会话的访问控制来限制对某些控制器 - >功能的访问。在函数的开始,你可以放置代码if($ _ SESSION ['user']!='xyz')exit('access denied');

我可以使用 cron守护进程调用函数吗?

是的,你可以调用在cron任何控制器功能使用此命令 wget的https://www.example.com/controller-name/function-name

或者我应该把这些功能在其他控制器? 如果代码变得非常大并且变得难以管理,那么重构代码总是一个好主意。

0

另一种方法是使用受保护的命名空间。当我尝试调用一个被标记为受保护的函数时,我可以在PHP代码中使用它,但试图通过浏览器加载它时,我收到一个404.

当然,将它标记为私有也可以,但是你会失去在班级扩展中使用该功能的能力。在处理核心扩展时,会有很多问题。

与罗马

相关问题