下面的代码似乎显示在“视图”中而不是$data
,因为它应该是(我还没有在我的视图中回显$data['companyName']
,但$data['pageTitle']
工作正常)。
问题:
型号:
function companyName()
{
$companyName = $this->db->query("SELECT company_name FROM core");
if ($companyName->num_rows() > 0)
{
foreach ($companyName->result() as $row)
{
echo $row->company_name;
}
}
控制器:
public function index()
{
$data['companyName'] = $this->core_model->companyName();
$data['pageTitle'] = "Admin Login";
$this->load->view('admin/assets/header', $data);
$this->load->view('admin/login.php');
$this->load->view('admin/assets/footer');
}
答案 0 :(得分:2)
通过echo
模型中的某些内容,echo
在处理模型时发生,这在视图甚至在控制器眼中闪烁之前就已经过了。
相反,你应该在你的模型中做这样的事情:
function companyName()
{
$companyName = $this->db->query("SELECT company_name FROM core");
if ($companyName->num_rows() > 0)
{
$company_names = '';
foreach ($companyName->result() as $row)
{
$company_names .= $row->company_name;
}
}
return $company_names;
}
然后你可以将$data
传递到视图中,字符串就可以像你想要的那样回显。