Php 禁止自动加载程序尝试加载JsonSerializable

Php 禁止自动加载程序尝试加载JsonSerializable,php,codeigniter-2,Php,Codeigniter 2,我在CodeIgniter内的库中有以下设置: class DataModelAutoloader { public function __construct() { spl_autoload_register(array($this, 'loader')); log_message('debug', 'QR-Invited autoloader initialized'); } public function loader($c

我在CodeIgniter内的库中有以下设置:

class DataModelAutoloader
{
    public function __construct()
    {
        spl_autoload_register(array($this, 'loader'));
        log_message('debug', 'QR-Invited autoloader initialized');
    }

    public function loader($className)
    {
        log_message("debug", "Accessing loader for class: " . $className);
        if (substr($className, 0, 9) == 'datamodel') {
            $fullyQualifiedPath = APPPATH.str_replace('\\', DIRECTORY_SEPARATOR, $className).'.php';
            log_message('debug', 'Fully qualified path is: ' . $fullyQualifiedPath);
            require APPPATH.str_replace('\\', DIRECTORY_SEPARATOR, $className).'.php';
        }
    }
}
现在,我在
datamodel/Invite.php
中的一个数据模型
Invite
正在加载,但它的定义如下:

class Invite implements JsonSerializable {
  ...
};
问题是它现在正试图加载
datamodel/JsonSerializable.php
,当然,这并不存在,因为我想使用内置的PHP5.4.0
JsonSerializable
。(我在运行的机器上安装了PHP5.5.X)。因此,我在运行此代码时遇到以下异常:

<p>Severity: Warning</p>
<p>Message:  require(qrinvited-application/datamodel/JsonSerializable.php): failed to open stream: No such file or directory</p>
<p>Filename: libraries/Datamodelautoloader.php</p>
<p>Line Number: 20</p>
严重性:警告

消息:require(qrapplication/datamodel/JsonSerializable.php):无法打开流:没有这样的文件或目录

文件名:libraries/Datamodelautoloader.php

电话号码:20


有没有一种方法可以禁用PHP5内置的自动加载尝试?或者,也许我在扩展类的过程中做错了什么?

如果它都是关于“名称空间”的,那么使用
实现\JsonSerializable
\
使PHP知道使用
默认
名称空间,而不是类当前所在的名称空间(在本例中为
datamodel
)。

如果其所有关于名称空间的内容都使用implements\JsonSerializableYep,则为@s.d.a.p.e。你能把这个作为答案贴出来吗?我会接受的。