- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 Codeigniter 2.1.2 中,我想创建基本 Controller ,然后从此 Controller 扩展。它不起作用,我不知道为什么,我现在非常绝望。
在 \application\core\MY_Base_Controller.php 中,我有这个:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Base_Controller extends CI_Controller
{
function __construct()
{
parent::__construct();
...
在 \application\controllers\Home.php 中,我有这个:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Home extends MY_Base_Controller {
错误消息是
fatal error :在第 3 行 ...\application\controllers\Home.php 中找不到类“MY_Base_Controller”
我不知道该怎么做,我在互联网上读到我必须将基本 Controller 放入我所做的核心文件夹中,我必须使用前缀 MY_ 命名基本 Controller ,我做到了。但它仍然没有工作。在我的 config.php 中也是这一行
$config['subclass_prefix'] = 'MY_';
我使用 xampp 在本地主机上运行它
感谢您的帮助
编辑
有人可以下载以下链接尝试一下,并告诉我出了什么问题。我刚刚下载了 codeigniter 尝试创建基本 Controller 并扩展欢迎 Controller 。不工作。以下 rar 中只有修改过的文件。谢谢 http://goo.gl/sKHkDl
编辑2
我可以通过将 MY_Base_Controller 重命名为 MY_Controller 来实现此功能。这是否意味着我只能为 Controller 创建一个扩展类?例如。我不能拥有
只是MY_Controller?
最佳答案
我在第一个 CI 应用程序中遇到了同样的问题,并发现了两个需要检查的关键元素:
<强>1。案例匹配:根据您的服务器配置,目录中文件的名称需要与您的类的大小写匹配。例如,如果您的类名为“MY_Controller”,则 Linux 服务器上的文件名需要为:“MY_Controller.php”。众所周知,Windows 服务器存在大写文件名问题,因此您可以尝试将 Controller 命名为“my_controller.php”和/或将 config.php 中的扩展名更改为“my_”而不是“MY_”
<强>2。插入自动加载功能由于我不知道的原因,Codeigniter 在首次加载核心类之前不会自动识别和读取扩展核心类。这可能会导致您的扩展无法正确加载。为了解决这个问题,您可以将这个简单的自动加载脚本添加到 config.php 的最底部
/*
|--------------------------------------------------------------------------
| Autoload Custom Controllers
|--------------------------------------------------------------------------
|
*/
function __autoload($class) {
if (substr($class,0,3) !== 'CI_') {
if (file_exists($file = APPPATH . 'core/' . $class . EXT)) {
include $file;
}
}
}
旁注:上述解决方案已在 CodeIgniter 2.1.4 上进行了测试。所提问题涉及CodeIgniter 2.1.2
关于php - Codeigniter 扩展 Controller ,找不到 Controller ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21351808/
我正在尝试在 Windows 上运行的小于 1GB 的 VM 上设置 YouTrack 和 TeamCity。使用率将非常低(用户和请求)。这是一个 POC 环境,如果它有效,我可能会将它推送到一个超
所以我在尝试使用 FORFILES 解决这个问题时遇到了麻烦。我正在尝试获取不超过 4 天的文件。所以基本上少于 4 天。然而,这似乎不太可能,因为/d -4 获取所有 4 天或更早的项目。 以下是我
如何从下面的 events 表中选择小于 15 分钟前创建的 events? CREATE TABLE events ( created_at timestamp NOT NULL DEFAU
Google Analytics Realtime提供 rt:minutesAgo ,可以过滤查询。 然而,它是一个维度而不是一个度量标准,<=不能在过滤器中使用。 假设我想在最后 n 分钟内获得一些
iOS 核心数据 - 严重的应用程序错误 - 尝试插入 nil 你好, 我的应用程序实际上运行稳定,但在极少数情况下它会崩溃并显示此错误消息... 2019-04-02 20:48:52.437172
我想制作一个 html div 以快速向右移动(例如不到 1 秒)并消失。然后1秒后再次直接出现在这个过程最开始div的位置。此过程将由单击按钮并重复 10 次触发。 我试图在 CSS 中使用过渡属性
我发现使用 TimeTrigger 是 Windows 10 (UWP) 上计划后台任务的方式。但是看起来我们需要给出的最小数字是 15 分钟。只是想知道,即使我们安排它在接下来的 1 分钟内运行,警
我必须在 1 秒内在屏幕上打印 2^20 行整数 printf 不够快,还有其他易于使用的快速输出替代方法吗? 每一行只包含 1 个整数。 我要求它用于竞争性编程问题,我必须将其源代码提交给法官。 最
我是一名优秀的程序员,十分优秀!