【问题标题】:Simple PHP array codeigniter controller简单的 PHP 数组 codeigniter 控制器
【发布时间】:2016-02-26 10:23:56
【问题描述】:

我想稍微缩短一下我的 CodeIgniter 控制器。 现在看起来像这样:

case 'klant1':
                $data['title'] = $page;
                $this->load->view('templates/header', $data);
                $this->load->view('pages/klant1', $data);
                $this->load->view('templates/footer', $data);
                break;
case 'klant2':
                $data['title'] = $page;
                $this->load->view('templates/header', $data);
                $this->load->view('pages/klant2', $data);
                $this->load->view('templates/footer', $data);
                break;
case 'klant3':
                $data['title'] = $page;
                $this->load->view('templates/header', $data);
                $this->load->view('pages/klant3', $data);
                $this->load->view('templates/footer', $data);
                break;

我想可能有一种方法可以使用数组或使klant1 + 2 + 3 的东西?

有人可以帮我写代码吗?我不认为这很难,但我不擅长 php..

【问题讨论】:

    标签: php arrays codeigniter controller


    【解决方案1】:
    $klan = your_case;    
    
    $data['title'] = $page;    
    $this->load->view('templates/header', $data);    
    $this->load->view('pages/'.$klan, $data);    
    $this->load->view('templates/footer', $data)
    

    【讨论】:

    • 'your_case' ?这是某种 php 函数还是我必须将其更改为某种东西?
    • 用我的代码替换你的 switch case • your_case 不是 php 函数 (;___;)。
    【解决方案2】:

    替换

    switch($variable)
    {
    ...your code 
    

    $data['title'] = $page;    
    $this->load->view('templates/header', $data);    
    $this->load->view('pages/'.$variable, $data);    
    $this->load->view('templates/footer', $data);
    

    【讨论】:

      【解决方案3】:
      case 'klant1':
          $load = 'klant1';
          break;
      case 'klant2':
          $load = 'klant2';
          break;
      case 'klant3':
          $load = 'klant3';
          break;
      
      $data['title'] = $page;
      
      $this->load->vars($data);
      
      $this->load->view('templates/header');
      $this->load->view('pages/' . $load);
      $this->load->view('templates/footer');
      

      【讨论】:

        【解决方案4】:

        做到了:

        function view($page = 'home', $klant = null) {
        case 'klant':
                        $data['title'] = $page;
                        $this->load->view('templates/header', $data);
                        $loadpage = 'pages/klant'.$klant;
                        $this->load->view($loadpage, $data);
                        $this->load->view('templates/footer', $data);
                        break;
        }
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2016-07-23
          • 2019-04-20
          • 2023-03-15
          • 2013-08-12
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          相关资源
          最近更新 更多