【问题标题】:Function Overloading in CodeIgniterCodeIgniter 中的函数重载
【发布时间】:2012-07-02 22:44:34
【问题描述】:

我想知道您是否可以在 PHP 中重载函数,特别是在 CodeIgniter 中。例如,在我的控制器中,如果我要加载一个视图,但变量是作为参数提供还是留空会有所不同。这是我尝试过的概念,也是我在其他语言中学习的方式:

<?php
  function load_view(){
     $this->load->view('view');
  }

  function load_view($var){
    $this->load->model('data');
    $data = $this->data->getInfo($var);
    $this->load->view('view', $data);
  }
?>

但是当我尝试这个时,我收到一个错误“致命错误:无法重新声明 Controller::load_view”...

任何帮助将不胜感激。 提前致谢!

【问题讨论】:

    标签: php codeigniter overloading


    【解决方案1】:

    在 PHP 中重载函数使用可选参数。一个例子可能是:

    function load_view($var = null) {
         if (!empty($var)) {
             $this->load->model('data');
             $data = $this->data->getInfo($var);
             $this->load->view('view', $data);
         } else {
             $this->load->view('view');
         }
    }
    

    【讨论】:

      猜你喜欢
      • 2011-03-09
      • 1970-01-01
      • 2016-04-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多