Расширяет REST_Controller и MY_Controller одновременно в CodeIgniter

#codeigniter #extend #codeigniter-restserver

#codeigniter #расширить #codeigniter-restserver

Вопрос:

У меня такая ситуация, когда мне нужно получить доступ к глобальной функции, и обычно я делаю это в MY_Controller для обычного CodeIgniter. Но в этом случае я использую сервер REST, и я заметил, что обычный контроллер должен расширять REST_Controller, чтобы он функционировал.

Из моего AuthController

 <?php defined('BASEPATH') OR exit('No direct script access allowed');
require APPPATH . 'libraries/REST_Controller.php';
class AuthController extends REST_Controller {}
 

REST_Controller

 <?php
defined('BASEPATH') OR exit('No direct script access allowed');
abstract class REST_Controller extends CI_Controller {}
 

Я хочу использовать MY_Controller для создания глобальной функции, доступ к которой может получить любой контроллер. Например, from AuthController я хочу расширить его до MY_Controller , но при этом я не смогу использовать REST_Controller .

Есть ли какой-либо способ, которым я могу одновременно расширить MY_Controller и REST_Controller, чтобы я мог использовать обе функции из этих двух контроллеров?

Ответ №1:

Из вашего контроллера авторизации расширяет 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.

Комментарии:

1. Да, я это сделал. Может быть слишком поздно для решения, но поскольку это ответ, я принял его

2. Спасибо за ваше согласие. Рад слышать, что вы уже нашли решение.