Как загрузить phpseclib в codeigniter

Согласно названию, кто-нибудь достиг этого? Каковы наилучшие методы включения этой библиотеки в codeigniter (v2.1.2)?

Я знаю, что это можно сделать, просто используя операторы include/require, как и любое другое PHP-приложение, однако, поскольку этот проект будет передан нескольким разработчикам после завершения, я хочу убедиться, что он построен правильно с использованием шаблонов проектирования, задуманных разработчиком CI.

Я пробовал следующее в тестовом контроллере

public function index(){

    $this->load->library('phpseclib0.3.0/Net/SFTP');

}

Однако меня встречают:

Несуществующий класс: SFTP

phpseclib взят из здесь.


person user1197220    schedule 14.08.2012    source источник


Ответы (1)


метод $this->load->library предназначен для библиотек, которые уже существуют в codeigniter.

Вы можете создать оболочку для класса PHPSecLib, однако на данный момент проще всего просто включить ее.

  1. Загрузите исходный код со страницы phpseclib.
  2. Загрузите его в папку /application/first_party.
  3. включить файл.

    include(APPPATH . '/third_party/phpseclib/Net/SSH2.php');

  4. Создайте экземпляр класса, который вы хотите использовать.

person Gavin    schedule 14.08.2012
comment
Это отлично работает, в зависимости от вашей настройки, мне пришлось добавить set_include_path(get_include_path() . PATH_SEPARATOR . APPPATH . 'third_party/phpseclib');, как показано в их документации, потому что Net/SSH2.php включает некоторые собственные включения, которые не работали без phpseclib в пути. - person Nick Bisby; 02.05.2013