Php 如何在codeigniter中将多个模型函数从控制器传递到视图? 控制器
我有来自Php 如何在codeigniter中将多个模型函数从控制器传递到视图? 控制器,php,codeigniter,Php,Codeigniter,我有来自模型的多个函数将数据传递到视图 我成功地做到了这一点: $var1 = $this->model_name->function_name(); $var2 = $this->model_name->function_name(); $var3 = $this->model_name->function_name(); $data = $var1 + $var2 + $var3; $this->load->view('page_name
模型的多个函数
将数据传递到视图
我成功地做到了这一点:
$var1 = $this->model_name->function_name();
$var2 = $this->model_name->function_name();
$var3 = $this->model_name->function_name();
$data = $var1 + $var2 + $var3;
$this->load->view('page_name', $data);
现在,我在其他领域使用上述方法,这是完美的工作。但是,我收到一个错误致命错误:不支持的操作数类型发生了什么?为什么它在一个小时前工作,突然中断,代码没有修改..您应该像这样将多个变量放入数组中:
$var1 = $this->model_name->function_name();
$var2 = $this->model_name->function_name();
$var3 = $this->model_name->function_name();
$data = array(
'var1' => $var1,
'var2' => $var2,
'var3' => $var3,
);
$this->load->view('page_name', $data);
或者正如Rick建议的那样,您可以使用:
$data = array();
$data['var1'] = $this->model_name->function_name();
$data['var2'] = $this->model_name->function_name();
$data['var3'] = $this->model_name->function_name();
$this->load->view('page_name', $data);
关于数组的更多信息:您应该像这样将多个变量放入数组:
$var1 = $this->model_name->function_name();
$var2 = $this->model_name->function_name();
$var3 = $this->model_name->function_name();
$data = array(
'var1' => $var1,
'var2' => $var2,
'var3' => $var3,
);
$this->load->view('page_name', $data);
或者正如Rick建议的那样,您可以使用:
$data = array();
$data['var1'] = $this->model_name->function_name();
$data['var2'] = $this->model_name->function_name();
$data['var3'] = $this->model_name->function_name();
$this->load->view('page_name', $data);
有关数组的更多信息:您能否根据收到的消息找出导致错误的行?是不是
$data=$var1+$var2+$var3代码>是,这就是错误所暗示的,但是问题在模型中。其中一个变量没有正确返回,导致抛出异常。我添加了一个If
,以确保检查num_行,并且所有行都再次工作。谢谢。根据收到的信息,你能找出导致错误的那一行吗?是不是$data=$var1+$var2+$var3代码>是,这就是错误所暗示的,但是问题在模型中。其中一个变量没有正确返回,导致抛出异常。我添加了一个If
,以确保检查num_行,并且所有行都再次工作。感谢您在此进行扩展,“致命错误:不支持的操作数类型”意味着一个或所有$var不是数组,但可以是变量。为了执行“+”,所有变量都必须是数组。Otporan所做的是在数组中声明$var,而不是依赖“+”。您可能还需要考虑使用实际上意味着$data['userdata']=$this->model_name->function_name()的变量名;您还可以使用,以获得更少的代码。e、 g.$this->load->view('view_path',compact('var1','var2','var3')
仅在此基础上进行扩展,“致命错误:不支持的操作数类型”意味着一个或所有$var不是数组,而是变量。为了执行“+”,所有变量都必须是数组。Otporan所做的是在数组中声明$var,而不是依赖“+”。您可能还需要考虑使用实际上意味着$data['userdata']=$this->model_name->function_name()的变量名;您还可以使用,以获得更少的代码。e、 g.$this->load->view('view_path',compact('var1','var2','var3')代码>