gpt4 book ai didi

php - Zend Framework,$this->_forward 是做什么的

转载 作者:IT王子 更新时间:2023-10-28 23:51:40 25 4
gpt4 key购买 nike

我希望有人解释一下 _forward 到底在做什么,我看不到 _forward 是否也在将附加 View 呈现给 Action 或只是执行 Action 。

也可以在 View 脚本中将参数传递给 $this->action 吗?

更一般地说,我的问题是如何编写确认页面,假设用户输入了一些内容并且您想向他显示确认,对于这种情况来说,转发是否意味着?

最佳答案

_forward 是一个内部重定向。 _redirect 发送 header 告诉客户端浏览器转到某个其他 URL,而 _forward 告诉 Dispatcher 在内部将请求重定向到其他地方。

如果您考虑以下的正常调度顺序:

 preDispatch()
someAction()
postDispatch()

在该进程中的任何一点调用 _forward 将导致不执行以下步骤。所以如果你在preDispatch()中调用_forward,someAction()将不会被调用等等。如果您在 someAction() 中使用 _forward() 并且您正在使用 viewRenderer 操作助手来呈现您的 View (您让框架选择要呈现的 View 脚本),那么在 someAction() 中将不会呈现任何 View 脚本。

当请求被转发到新的 Controller /模块时,整个调度过程将在那里重复。

您可以使用以下命令找出正在分派(dispatch)的操作:

 $action = $this->getRequest()->getParam('action');

$action 将是 Action 的 url 形式,因此如果方法名称为“someKindOfAction”,$action 将包含“some-kind-of”。您也可以为 Controller 和模块执行此操作。

关于php - Zend Framework,$this->_forward 是做什么的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1647594/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com