我想从控制器中的相同函数(函数索引)调用两个不同的视图,
我已经将一个参数(一个id)传递给索引函数,当我的id值为null时,我希望显示所有博客列表,如果我得到一个id,那么我想只显示一个博客& #39; s id在url。
我已成功完成此操作,但我发出警告
遇到了PHP错误 严重性:警告 消息:缺少blog :: index()的参数1 文件名:controllers / blog.php 行号:5
所以请帮助我摆脱这种情况。
我的代码: -
class blog extends CI_Controller{
function index($url)
{
$this->load->model('blog_model');
$url = $this->uri->segment(1);
$data['blog_details'] = $this->blog_model->getBlog($url);
$data['blog_comment'] = $this->blog_model->getComment($url);
$data['blog_all'] = $this->blog_model->getBlogAll();
$this->load->view('blog',$data);
} }
答案 0 :(得分:1)
我认为您最好为您期望获得的变量定义默认值:
function index($url = NULL){
如果没有参数传递给URL中的函数,这将使您的函数将$url
设置为NULL
。
function index($url = NULL)
{
$this->load->model('blog_model');
//$url = $this->uri->segment(1);
$data['blog_details'] = $this->blog_model->getBlog($url);
$data['blog_comment'] = $this->blog_model->getComment($url);
$data['blog_all'] = $this->blog_model->getBlogAll();
$this->load->view('blog',$data);
}