Я хочу загрузить файлы на Google Drive с помощью php в codeigniter. Прежде всего, я пытаюсь интегрировать клиент google api в codiginator.
Я загрузил все файлы в свою папку third_party. это выглядит так
Я создал файл google.php
внутри папки моих libraries
Файл google.php
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); set_include_path(APPPATH . 'third_party/' . PATH_SEPARATOR . get_include_path()); require_once APPPATH . 'third_party/Google/Client.php'; class Google extends Google_Client { function __construct($params = array()) { parent::__construct(); } } ?>
Тогда я загрузил библиотеку в свой домашний контроллер, как это
function __construct() { parent::__construct(); //session, url, satabase is set in auto load in the config $this->load->model('Home_model', 'home'); $this->load->library('pagination'); $this->load->library('google'); }
После загрузки в google-библиотеку ни одна из функций внутри домашних контроллеров не работает. Каждая вещь просто показывает пустую страницу.
И внутри домашнего контроллера у меня есть функция test_lib,
function test_lib(){ echo $this->google->getLibraryVersion(); }
Когда я загружаю страницу. Я получаю черную страницу без ошибок или показов.
Может кто-нибудь помочь мне добавить клиентскую библиотеку google api в codeigniter. Tnx.
Как я уже упоминал, следующие примеры в репозитории, Google/autoload.php
должны быть включены перед использованием классов / экземпляров объектов. В вашем случае это APPPATH . 'third_party/Google/autoload.php'
APPPATH . 'third_party/Google/autoload.php'
.
Я думаю, что я бы принял подход этого ответа, когда вы создаете библиотечный файл в библиотеках, называете его Google.php только тем, что файл, который будет включен, – это autoload.php вместо Client.php из ответа
<?php if (!defined('BASEPATH')) exit('No direct script access allowed'); set_include_path(APPPATH . 'third_party/' . PATH_SEPARATOR . get_include_path()); require_once APPPATH . 'third_party/Google/autoload.php'; class Google extends Google_Client { function __construct($params = array()) { parent::__construct(); } }
Затем включите его как обычную библиотеку либо в автозагрузке, либо в любом месте, где вы хотите использовать библиотеку, используя
$this->load->library('google');
а затем эхо откуда-то вы загрузили lib
echo $this->google->getLibraryVersion();
выход должен быть чем-то вроде 1.1.5 и т. д.