我在codeigniter pages.php
中有一个控制器class Pages extends CI_Controller {
public function view($page = 'home')
{
$this->load->view('header');
echo("<br>");
$this->load->model("math");
echo $this->math->add(1,2);
}
}
模型:math.php
class math extends CI_Controller
{
public function add($val1,$val2){
return $val1+$val2;
}
}
视图:header.php
<html>
<head>
<title>fashion and style</title>
</head>
<body>
<?php
echo("this is the header");
?>
根据控制器,代码应输出:
this is the header
number
但我得到的输出如下:
number this is the header
为什么?
答案 0 :(得分:2)
如果您将直接从codeignitor控制器回显字符串,它将在呈现加载的视图之前呈现字符串。如果你想这样做,你可以尝试 -
$str = $this->math->add(1,2);
$this->output->append_output($str);
然后你的控制器看起来像 -
class Pages extends CI_Controller {
public function view($page = 'home')
{
$this->load->view('header');
$this->load->model("math");
$str = "<br>".$this->math->add(1,2);
$this->output->append_output($str);
}
}
希望这会有所帮助。
答案 1 :(得分:0)
试试这个:
控制器:
class Pages extends CI_Controller {
public function view($page = 'home')
{
$this->load->model("math_model");
$data['number'] = $this->math_model->add(1,2);
$this->load->view('header',$data);
}
}
模型math_model.php
型号:
class Math_model extends CI_Model
{
public function add($val1,$val2){
return $val1+$val2;
}
}
视图header.php
<html>
<head>
<title>fashion and style</title>
</head>
<body>
<?php
echo("this is the header");
?>
echo("<br>");
<?php
echo $number;
?>
</body>
</html>
有关模型的详细信息,请查看https://www.codeigniter.com/user_guide/general/models.html
有关观看,请查看https://www.codeigniter.com/user_guide/general/views.html