在CodeIgniter中一次扩展REST_Controller和MY_Controller

时间:2019-04-16 08:13:11

标签: codeigniter extend codeigniter-restserver

在这种情况下,我需要访问全局函数,通常我将在MY_Controller中为普通的CodeIgniter进行此操作。但是在这种情况下,我使用的是REST服务器,我注意到普通控制器必须扩展REST_Controller才能使其正常工作。

通过我的AuthController

ClientRT

REST_Controller

#include <vector>

class Mem_type {};
const int MAX_NUM_MEM = 5;
const int NUM_BANKS   = 5;

// allocates NUM_BANKS vectors with MAX_NUM_MEM objects of Mem_type
std::vector<std::vector<Mem_type>> MEM(NUM_BANKS, std::vector<Mem_type>(MAX_NUM_MEM));

我想使用<?php defined('BASEPATH') OR exit('No direct script access allowed'); require APPPATH . 'libraries/REST_Controller.php'; class AuthController extends REST_Controller {} 创建可以被任何控制器访问的全局函数。例如,我想将其从<?php defined('BASEPATH') OR exit('No direct script access allowed'); abstract class REST_Controller extends CI_Controller {} 扩展到MY_Controller,但是这样做将无法使用AuthController

有什么办法可以一次扩展到MY_Controller和REST_Controller,以便可以使用这两个控制器中的两个功能?

1 个答案:

答案 0 :(得分:0)

从您的Auth控制器中扩展MY_Controller,并在MY_Controller中扩展REST_Controller。

就像

AuthController

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

class AuthController extends MY_Controller {}

MY_Controller

<?php
require(APPPATH.'/libraries/REST_Controller.php');

class MY_Controller extends REST_Controller

您可以在MY_Controller中编写全局函数。