Php MVC框架中的数组传递

Php MVC框架中的数组传递,php,model-view-controller,Php,Model View Controller,好吧,这有点复杂,但我会尽量简单地解释 我有一个模型类,它执行所有活动并将信息存储在数组中 我有一个控制器类,它生成一个新的模型类,并从模型类调用所需的操作来执行活动 但所有这些都必须从视图文件中发生。因此,我从视图文件提交表单,刷新页面,刷新后,我的控制器类检查表单是否已提交,如果为true,则开始从模型类创建对象 现在,这是我遇到的问题。我再次需要重定向Controller类内的页面,基本上它所做的是在刷新时,它实际上是根据Model类发送的数据在Controller类内调用动作。e、 g

好吧,这有点复杂,但我会尽量简单地解释

我有一个模型类,它执行所有活动并将信息存储在数组中

我有一个控制器类,它生成一个新的模型类,并从模型类调用所需的操作来执行活动

但所有这些都必须从视图文件中发生。因此,我从视图文件提交表单,刷新页面,刷新后,我的控制器类检查表单是否已提交,如果为true,则开始从模型类创建对象

现在,这是我遇到的问题。我再次需要重定向Controller类内的页面,基本上它所做的是在刷新时,它实际上是根据Model类发送的数据在Controller类内调用动作。e、 g

在我的控制器类中有一个构造函数,它创建一个新的模型对象,调用模型动作,并有if和else语句来检查模型类发送的数据

现在,根据它调用/重定向到控制器类中另外两个操作的值。但当我使用

    header("model/controller/");
我的阵列丢失,无法将阵列从控制器传递到视图

我试过了

    header("model/controller/".$array);
并通过URL传递它。但我宁愿不通过URL传递它

那么,有没有可能实现我想要实现的目标呢


另外,如果这可能是一个幼稚的问题或是一个非常糟糕的编程实践,我很抱歉,我只是在学习。非常欢迎评论。

您要问的是如何在两个HTTP请求之间持久化数据,答案通常是如何使用。它与MVC无关。

我认为通过它的唯一方法就是使用

$data = implode('/',$array);
header("model/controller/".$data);
当收到它们时,在您的模型中使用以下代码:

$data = explode('/',fun_get_args());
// OR
$data = explode('/',$requestURL);
// $requestURL to be replaced with a function depending on your MVC

希望这可以帮助您

我说过,因为模型、视图和控制器彼此之间的行为方式。如果不是因为文件的分离,我一开始就不会有这个问题。但是,是的,我也想到了会话,这就是为什么我试图避免,因为我们的简化框架以一种特定的方式处理会话。这是一种有趣的方法。我将继续测试代码,并让您知道它是如何运行的。我已经让它工作了:)虽然采用了不同的方法,但想法基本相同。而不是“/”我用“;”因为/在我们的MVC中被特别处理。谢谢你的提示^_^