Что безопасно: использовать required один раз или сделать одну функцию в помощнике в codeigniter?

У меня была одна проблема при вызове контроллера с другого контроллера, один из пользователей stackoverflow предложил использовать require_once, но другой человек сказал, что это не очень хорошая идея, теперь я запутался, что безопасно? Использовать require_once или написать функцию в помощнике?

Ссылка на старый вопрос


person Shibin Raju Mathew    schedule 26.05.2017    source источник


Ответы (2)


В целом я бы сказал, что вызов контроллера из другого контроллера — не лучшая практика. Если два контроллера должны использовать одну и ту же логику, возможно, эта логика должна быть в отдельном месте. Это можно сделать, создав собственную библиотеку и загрузив ее в оба контроллера.

Перейдите по ссылке ниже, чтобы узнать больше о создании библиотек в CodeIgniter.

Создание библиотек

person dnapierata    schedule 26.05.2017

Это не столько вопрос «безопасности», сколько вопрос «соглашения» в том, как все делается в среде CodeIgniter (CI). «Идея» контроллера в CI заключается в том, что для любого заданного запроса к серверу создается только один контроллер.

Причина, по которой использование require для загрузки другого контроллера может быть небезопасным, заключается в том, что вы можете внести ошибки, которые очень сложно отследить. Есть более безопасный способ удовлетворить ваши потребности.

В ситуации, когда есть код, который был бы полезен более чем в одном контроллере, лучшим решением, вероятно, будет создание пользовательской библиотеки, которую можно будет загружать и использовать по мере необходимости. Также может помочь Помощник. ИМО, библиотеки (классы) являются ООП и предпочтительны.

Документация CI по Создание библиотек описывает, как реализовать пользовательские классы, которые легко использовать. в любом количестве контроллеров.

person DFriend    schedule 26.05.2017