【问题标题】:CodeIgniter will not load a specific controllerCodeIgniter 不会加载特定的控制器
【发布时间】:2017-08-01 23:45:45
【问题描述】:

我遇到了一个奇怪的问题,即 CodeIgniter (3.1) 不会加载特定的控制器。我可以加载其他控制器,但是当我使用任何大小写组合创建名称为 sppb 的控制器并将文件另存为 sppb.php 时,它不会加载。

<?php
    defined('BASEPATH') OR exit('No direct script access allowed');

   class Sppb extends CI_Controller {
      public function __construct()
      {
        parent::__construct();
      }

      public function index()
      {
      }
}

上面是整个控制器,保存到服务器,对应名称为sppb.php。

我还使用了一个可以加载的不同控制器,将其复制到一个新文件中,将名称更改为 sppb,将其保存到服务器,但仍然无法加载。

这是在 Linux 服务器上,我已经检查了文件命名和控制器的大小写。

【问题讨论】:

  • 类 Sppb 扩展 CI_Controller
  • 部分正确,但我的主要问题是文件名也需要大写。感谢您的帮助。
  • 就像docs 说的那样。

标签: php codeigniter controller


【解决方案1】:

您的 Class 文件名必须是第一个字母大写...如

Sppb.php

这同样适用于你的类名

class Sppb extends CI_Controller {

【讨论】:

  • 我之前评论说我试过这个,然后我重新阅读了你的回复。你说的对。由于某种原因,我没有使用大写的 File 和 Class 进行测试。感谢您的帮助。
  • 我有点赌...很高兴这值得赌一把。
猜你喜欢
  • 2015-06-22
  • 2015-03-13
  • 2014-02-17
  • 2016-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-30
  • 1970-01-01
相关资源
最近更新 更多