Php codeigniter,从来不会直接调用视图,有人能解释一下吗

Php codeigniter,从来不会直接调用视图,有人能解释一下吗,php,html,codeigniter,Php,Html,Codeigniter,我刚开始使用codeigniter。我需要知道这个问题的解释 视图从不直接调用 这是否意味着我不能使用$this->load->view(“我的视图”)进入另一个视图 我在核心php中创建了一个项目,并决定将其转换为codeigniter。在我的项目中,一个页面有不同的部分,所以我在视图中创建了一个主文件recipes.php。我还创建了一个文件夹,将不同的部分文件放入recipes.php中。在我的控制器中,我加载了recipe视图,它显示了recipe页面,然后在recipes视图中,我使用

我刚开始使用codeigniter。我需要知道这个问题的解释 视图从不直接调用

这是否意味着我不能使用$this->load->view(“我的视图”)进入另一个视图

我在核心php中创建了一个项目,并决定将其转换为codeigniter。在我的项目中,一个页面有不同的部分,所以我在视图中创建了一个主文件recipes.php。我还创建了一个文件夹,将不同的部分文件放入recipes.php中。在我的控制器中,我加载了recipe视图,它显示了recipe页面,然后在recipes视图中,我使用$this->load->('categorymenu')。它工作得很好。我没有传递任何数据,因为这个部分包含简单的html。但我很困惑,这不是加载视图的正确方式

所以请有人详细解释一下。我是在做正确的事情,还是有其他的方法来做


我还将视图加载到控制器中,并将其传递到控制器中的主视图,该视图同样工作正常。但正如我提到的,我不确定哪种方法是正确的。如果这是一个愚蠢的问题,我深表歉意。

因为你对Codeigniter很天真,所以你问的任何问题都不愚蠢。 现在你问题的答案是

  • 您可以在另一个视图中加载视图,这是绝对可以接受的,因为在某些情况下,您必须在网站的所有页面中放置标题,此时您必须在另一个视图中加载视图
  • 其次,加载视图的正确方法是在控制器中。因为控制器是模型和视图之间的中介。如果希望在页面中显示数据库的某些数据,则必须通过在模型中创建的函数获取该数据,然后才能在控制器中加载视图并在其中传递数据
  • 这是控制器的代码


    可能是重复的…看看这个…我做了你第一次尝试时做的,一直都很好。但是你的第二种方法,也就是@RïshïKïshKümar建议的asnwer中提到的最好的方法,似乎是正确的做法,这样你就不必一个视图一个视图地进行修改,控制器中的一切都是正确的。实际上,我检查了@Rïsh KïshKümar的响应并使用了代码。这对我帮助很大。我对正确的一个感到困惑。@Fayjovi。。谢谢你!!谢谢你的回答。所以这意味着,如果我不传递数据,那么我可以在其他视图中加载视图,例如简单html,对于特定于数据库的视图,我应该使用控制器。我花了两天时间,最终得到了答案。再次感谢你的帮助。
    public function temp()
    {
       $data['recs']=$this->my_model->my_function(); //getting data to pass in view
       $this->load->view('my_view',$data); //load the view
    }