Интеграция Mailjet API v3-оболочки в виде библиотеки Codeigniter

Как я могу интегрировать Mailjet API PHP-оболочка в мою установку Codeigniter как библиотеку?

Это так же просто, как размещение содержимого хранилище в application/libraries/Mailjet а затем создание Mailjet.php файл в application/libraries который инициализирует Mailjet, как показано ниже?

require 'Mailjet/vendor/autoload.php';

use \Mailjet\Resources;

$mj = new \Mailjet\Client(getenv('MJ_APIKEY_PUBLIC'), getenv('MJ_APIKEY_PRIVATE'));

Пожалуйста, дайте мне знать, если я на правильном пути. Благодарю.

-1

Решение

Да, вы на правильном пути. Но вам не нужно создавать библиотеку CI. использование Mailjet библиотека репозитория в контроллере. Просто используйте композитор, как указано в CI документы.

Если вы хотите, чтобы CodeIgniter использовал автозагрузчик Composer, просто установите для $ config [‘composer_autoload’] значение TRUE или пользовательский путь в application / config / config.php.

Пошаговая инструкция по использованию репозитория github в CodeIgniter

  1. Задавать $config['composer_autoload'] = TRUE; в APPPATH.'config/config.php' файл
  2. Положил composer.json файл с нужными репозиториями / проектами в APPPATH место нахождения
  3. Делать работу с composer install команда через консоль, которая сделает vendor и другие связанные файлы и папки внутри
  4. Используйте его при необходимости в контроллере или другом коде, как показано в примере ниже

пример контроллера Mailman.php

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

use \Mailjet\Resources;

class Mailman extends CI_Controller
{
private $apikey = 'apy__key__here';
private $secretkey = 'apy__secret__here';

protected $mj = NULL;

public function __construct()
{
// $this->mj variable is becoming available to controller's methods
$this->mj = new \Mailjet\Client($this->apikey, $this->apisecret);
}

public function index()
{
$response = $this->mj->get(Resources::$Contact);

/*
* Read the response
*/
if ($response->success())
var_dump($response->getData());
else
var_dump($response->getStatus());
}
}

Если вы явно хотите использовать репозиторий Mailjet (или любой другой) через библиотеку CI, установите документы как создать пользовательскую библиотеку и объединить этот код выше с ней. Лично я использую репозитории таким образом, чтобы избежать ненужной загрузки и анализа достаточных библиотек.

3

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]